Collaborative phenotyping effort of European Drosophila melanogaster populations
Genomic analyses (Kapun et al. 2020) showed that there is longitudinal population structure, continent-wide sweeps, candidate genes for local climate adaptation by using 48 pooled population samples from 32 locations.
In 2017, DrosEU consortium has decided to make a collaborative phenotyping effort of European Drosophila melanogaster populations at the Groningen meeting.
The call was made with approximate numbers of populations, lines, etc. and under predefined criteria (finish within a year, reps, blocks, etc) and participating labs have indicated which traits they are willing to phenotype.
Nine sampling locations were chosen based on genomic data and cover a wide range of latitude (~20°) and longitude (~40°) across the continent (see table below). From each location, 15 to 20 isofemale lines were established in corresponding labs at the sampling location and the isofemale lines were centrally maintained by Élio Sucena at Instituto Gulbenkian de Ciência (IGC), Lisbon, Portugal. A total of 173 isofemale lines were used in this study.
| Country | Location | Latitude | Longitude | Altitude | Collector |
|---|---|---|---|---|---|
| Portugal | Recarei | 41.150 | -8.410 | 175 | Jorge Vieira |
| Spain | Gimenells (Lleida) | 41.618 | 0.620 | 173 | Josefa Gonzalez |
| Denmark | Karensminde | 55.945 | 10.213 | 15 | Mads Schou |
| Germany | Munich | 48.180 | 11.610 | 520 | Amanda Glaser-Schmitt |
| Austria | Mauternbach | 48.375 | 15.560 | 572 | Andrea Betancourt |
| Finland | Akaa | 61.100 | 23.520 | 88 | Maaria Kankare |
| Ukraine | Uman | 48.753 | 30.206 | 214 | Iryna Kozeretska |
| Turkey | Yesiloz | 40.231 | 32.260 | 680 | Banu Onder |
| Russia | Valday | 57.979 | 33.244 | 217 | Elena Pasyukova |
## Scale on map varies by more than 10%, scale bar may be inaccurate
Contributed labs are Abbott, Bergland, Billeter, Colinet, Flatt, Fricke, Gibert, Gonzalez, Grath, Hoedjes, Kozeretska, Mensch, Onder, Parsch, Pasyukova, Posnien, Ritchie, Schlötterer, Schmidt, Stamenkovic-Radak, Sucena, Tauber, Vieira, Wegener, Zwaan and detailed list below :
| Country | Lab | PI | Trait |
|---|---|---|---|
| Sweden | Lund | Abbott | Pigmentation |
| USA | Charlottesville | Bergland | Diapause |
| The Netherlands | Groningen | Billeter | Fecundity |
| France | Rennes | Colinet | Dry weight |
| Switzerland | Fribourg | Flatt | Diapause |
| Switzerland | Fribourg | Flatt | Lifespan |
| Germany | Muenster | Fricke | Fecundity |
| France | Lyon | Gibert | Development time |
| France | Lyon | Gibert | Pigmentation |
| France | Lyon | Gibert | Viability |
| Spain | Barcelona | Gonzalez | Cold-shock mortality |
| Spain | Barcelona | Gonzalez | Starvation resistance |
| Germany | Munich | Grath | Development time |
| Germany | Munich | Grath | Viability |
| The Netherlands | Lausanne | Hoedjes | Development time |
| The Netherlands | Lausanne | Hoedjes | Dry weight |
| The Netherlands | Lausanne | Hoedjes | Viability |
| Ukraine | Kyiv | Kozeretska | Cold-shock mortality |
| Ukraine | Kyiv | Kozeretska | Thorax length |
| Argentina | Buenos Aiers | Mensch | Chill-coma recovery time |
| Turkey | Ankara | Onder | Dry weight |
| Turkey | Ankara | Onder | Starvation resistance |
| Turkey | Ankara | Onder | Wing area |
| Germany | Munich | Parsch | Heat-shock mortality |
| Germany | Munich | Parsch | Lifespan |
| Russia | Moscow | Pasyukova | Lifespan |
| Russia | Moscow | Pasyukova | Starvation resistance |
| Germany | Göttingen | Posnien | Thorax length |
| Germany | Göttingen | Posnien | Wing area |
| UK | St Andrews | Ritchie | Thorax length |
| UK | St Andrews | Ritchie | Wing area |
| UK | St Andrews | Ritchie | Wing patterning |
| Austria | Vienna | Schlötterer | Diapause |
| USA | Philadelphia | Schmidt | Development time |
| USA | Philadelphia | Schmidt | Pigmentation |
| USA | Philadelphia | Schmidt | Thorax length |
| USA | Philadelphia | Schmidt | Time to pupation |
| USA | Philadelphia | Schmidt | Viability |
| Serbia | Belgrade | Stamenkovic-Radak | Development time |
| Serbia | Belgrade | Stamenkovic-Radak | Viability |
| Serbia | Belgrade | Stamenkovic-Radak | Wing area |
| Portugal | Lisbon | Sucena | Fly husbandry |
| Israel | Haifa | Tauber | Locomotor activity |
| Portugal | Porto | Vieira | Chill-coma recovery time |
| Portugal | Porto | Vieira | Cold-shock mortality |
| Portugal | Porto | Vieira | Heat-shock mortality |
| Germany | Würzburg | Wegener | Circadian eclosion timing |
| The Netherlands | Wageningen | Zwaan | Development time |
| The Netherlands | Wageningen | Zwaan | Viability |
Esra Durmaz (all), Envel Kerdaffrec (all), Katja Hoedjes (DW, Via, DT), Banu Onder (SR, WA), Chris Wegener (CET), Eran Tauber (LA), Rudolf Rohr (UniFr), coordination-team
Wol_Freqs <- data.frame(unique(droseu_wol$Population))
Wol_Pops <- c((AK_freq <- nrow(droseu_wol %>% filter(Population=="AK") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "AK")) * 100),
(GI_freq <- nrow(droseu_wol %>% filter(Population=="GI") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "GI")) * 100),
(KA_freq <- nrow(droseu_wol %>% filter(Population=="KA") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "KA")) * 100),
(MA_freq <- nrow(droseu_wol %>% filter(Population=="MA") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "MA")) * 100),
(MU_freq <- nrow(droseu_wol %>% filter(Population=="MU") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "MU")) * 100),
(RE_freq <- nrow(droseu_wol %>% filter(Population=="RE") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "RE")) * 100),
(UM_freq <- nrow(droseu_wol %>% filter(Population=="UM") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "UM")) * 100),
(VA_freq <- nrow(droseu_wol %>% filter(Population=="VA") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "VA")) * 100),
(YE_freq <- nrow(droseu_wol %>% filter(Population=="YE") %>% filter(Wolbachia=="1")) /
nrow(droseu_wol %>% filter(Population == "YE")) * 100))
pop_freqs <- cbind(unique(droseu_wol$Country), Wol_Freqs, Wol_Pops)
cols <- c("Country", "Population", "Wolbachia_Freq")
pop_freqs <- setnames(pop_freqs, cols)
pop_freqs
## Country Population Wolbachia_Freq
## 1 Finland AK 100.00000
## 2 Portugal GI 66.66667
## 3 Denmark KA 85.00000
## 4 Austria MA 75.00000
## 5 Germany MU 94.73684
## 6 Spain RE 47.05882
## 7 Ukraine UM 69.23077
## 8 Russia VA 75.00000
## 9 Turkey YE 85.00000
Contributors and their experimental methods
3-5 day old adults (at least 25 pairs) are allowed to lay eggs en masse. Yeast is provided to stimulate egg laying (for at least 2 hours). Eggs are collected, and 40 are placed in each vial(^*^). Viability is calculated per vial, as the percentage of individuals that emerged from the 40 eggs.
Please see below number of
^*^ @ Schmidt lab, females were allowed to lay eggs for Xh, and viability is calculated as the percentage of individuals that emerged from total number of eggs, per vial.
Developmental time is scored as both the egg-to-pupa and egg-to-adult development time. Both were scored twice a day, when the chamber lights are turned on and two hours before they are turned off. In order to measure the egg-to-pupa developmental time, the spot where a pupa is found is marked with a permanent marker to keep track of which pupae have emerged in each day. The egg-to-adult developmental time is estimated by counting all emerged adults from the vial, and by sexing them.
At day 7 after emergence, flies are killed by snap freezing them in liquid nitrogen, by putting them at -20ºC or by putting them into an ethyl acetate solution and stored at -20ºC. Then they are sexed and placed into 96 wells plates, and placed in an oven set at 60-70 °C, for at least 3 days. At this point flies can be stored at room temperature using a protective cover. If this is the case, the day before measurements are made dry flies are again placed for 24h in the oven (60-70 °C) to ensure material is well dehydrated. Flies are then placed on a small piece of aluminium foil for direct weight measurement on microbalance (accuracy 1µg).
Five to seven days old flies are placed onto a double-sided sticky tape attached to a microscope slide and a picture of the thorax taken using a digital camera connected to a dissecting microscope. The same magnification and resolution is always used to increase reproducibility, and a scale bar inserted on each photo to allow transforming pixels into µm units. Thorax length is defined as the distance from the anterior margin of the thorax to the posterior tip of the scutellum and it is measured using the “Straight Line” in ImageJ/Fiji.
Both the left and right wings of five to seven days old flies (10 flies per sex per replicate) are removed and placed into a drop of Entellan®Merck, Hoyer’s Medium, sticked to a double-side sticky tape, or taped directly to the slide. Pictures of the wing preparations are taken using a digital camera connected to a dissecting microscope. The same magnification and resolution is always used to increase reproducibility. A scale bar is placed on each photo to allow transforming pixels into µm units. Manual measurements of wing length and wing area are performed using the “Straight Line” and “Polygon Selection” tools, respectively of ImageJ/Fiji (10.1371/journal.pone.0000007).
For each isofemale line, 10 males and 10 females are placed together in single-sex groups and allowed to mature for five days. Then, they are placed together (5-7 pairs), and mating interactions observed to ensure successful mating (at least 10 min copulation duration) to ensure that we have five successfully mated females. After a successful mating, males are discarded and females allowed to oviposit alone for 48 hours, moved to another vial, and allowed to oviposit for four days, and again moved to another vial and allowed to oviposit for two days to check that of egg-laying stopped. Vials are incubated until all offspring is born. Individuals are then frozen and the offspring counted.
Line level lifespan: Ten flies per sex/line are placed in each vial. The age at death will be scored when changing the food, at least three times a week. Five replicates are used.
Population level lifespan: Flies are kept in 1L demography cages (5 flies per line/sex for each population). The age at death will be scored when changing the food, at least three times a week. Ten replicates were performed.
Batches of 15-20 seven days old flies are placed for 18 hours in an empty vial immersed in an ice-water slurry box placed at a 4°C room for 18 hours. Then the vials are removed to a bench in a 25°C room and mortality scored 24 hours later.
Sexed flies are placed in an empty vial immersed in an ice-water slurry box placed at a 4°C room in the morning. Six hours later, flies are removed from the tube to individual wells of 24 well plates while being kept on ice. A timer is started once the plate is moved from the ice to a bench in a 25°C room. Each fly is checked by eye for recovery for a maximum of 60 minutes. Flies that are able to stand on their legs are considered recovered and the CCRT (in seconds) recorded.
Batches of 15-20 seven days old flies are placed in empty vials inside a 37ºC incubator and mortality checked for 7 hours every 30 minutes.
In order to induce diapause, two hour old ‘phenotypic virgins’ (pharate or melanized with meconium visible) female flies are exposed to 12°C and 10:14 light/dark hours for 3 weeks, using an incubator that allows temperature tracking. Vials are changed once per week. After three weeks under diapause conditions, flies are frozen at -80C until dissection. Both ovaries will be examined and classified according to the following simplified ‘classification’: 1) < stage 10: diapause; 2) stage 10-13: intermediate; 3) stage 14: non-diapause.
The locomotor activity of the flies (males only) was measured using the DAM2 Drosophila monitors (Trikinetics Inc., Waltham, MA). Flies were 1-3 days old. Single flies were placed in glass tubes (10 cm × 0.5 cm) that were filled with 2 cm sugar/agar medium. The monitors were placed in light chambers driven by LED, in an incubator at 24°C, ~30% humidity. The flies were entrained to a light-dark cycle (LD 12:12) for 5d and then allowed to free-run for 10 d in constant darkness (DD). The activity data were processed into 30 min bins, and four different variables were analysed. These included the circadian period, and the phase, which were analyzed using the FFT NLLS algorithm available at the BioDare2 server (https://biodare2.ed.ac.uk/). The other two variables, level of activity and the nocturnal/diurnal ratio were analyzed by a custom-made R script.
Batches of 10 sexed flies are transferred to glass vials filled with 5 mL of 2% agar for starvation 3-7 days after eclosion. The age at death will be scored every 8 hours.
For each line, 10 females, 13-15 days old, either alive or stored in 95% ethanol, are air dried and placed on their left side, and pictures taken using a dissecting microscope. Images are then analysed in ImageJ 1.46r, using the Area Fraction measurement in the Analyze menu. Area Fraction measures the percentage of pixels in a selected area that have been highlighted in red using the Threshold tool. This gives an estimate of the percentage of dark pigmentation on the three terminal tergites of the abdomen (4, 5 and 6).
MasterSheets
Insert a MasterSheet example
For each trait, sex and lab, we run counts for population, line and replicate vial (if applicable).
insert count tables
text BLA BLA BLA
TABLES
Here is an example code for tables (egg-to-adult viability). The very same code is used for other traits (either with or without Batch) by filtering the data at supervisor, batch, population and/or line levels (and also for sex, if applicable).
## First defined standard error and coefficient of variation
std_err <- function(x) sd(x)/sqrt(length(x))
coef_var <- function(x) sd(x)/mean(x)
estimate_mode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}
# Then compute descriptive statistics (mean, median, minimum, maximum, standard error, coefficient of variation and mode) at the defined levels (line with batch information example below) :
table_Via_Line_wbatch <- write.csv(d_Via %>% group_by(Supervisor.PI, Batch, Population, Line) %>% summarise_at(vars(ProportionEggtoAdultSurvival), list(Mean = mean, SD= sd, Median = median, Min = min, Max = max, SE = std_err, CV = coef_var, Mode = estimate_mode)), file = "Viability//table_Via_Line_wbatch.csv", row.names = T)
table_Via_Line_wbatch <- read.csv("Viability/table_Via_Line_wbatch.csv") #file name is here
Tables for descriptive statistics at population and line levels can be found in the main trait directory, under the file name table_TraitAbbreviation_Level_BatchInfo.csv (i.e. table_Via_Line_wobatch.csv)
FIGURES
Data range is calculated with #r min() and #r max() functions for each trait.
y-axis on the figures is scaled by the minimum (#r min_trait) and maximum (#r max_trait) values in the full data set for a given trait.
The very same ggplot theme has been used all across the document, called droseu_theme
droseu_theme <- theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black",), axis.title.x = element_text(size = 16), axis.text.x = element_text(size = 16),axis.text.y = element_text(size = 16),axis.title.y = element_text(size = 16))
p_TraitAbbreviation_Lab + coord_cartesian(ylim = c(min_trait, max_triat)) + droseu_theme
Here is an example code for figures (egg-to-adult viabiliy, Gibert Lab). The very same code is used to generate plots for other contributing labs and traits (either for Batch or Population) by filtering the data at supervisor level (for females and males separately, if applicable).
pdf(file="Viability/p_Via_Gibert.pdf",width=8, height=5)
p_Via_Gibert <- ggplot(data = (subset(d_Via,Supervisor.PI=='Gibert')), #subsets for supervisor
aes(x=Population_Lat, y=ProportionEggtoAdultSurvival, fill=Batch)) + #define x- and y-axis
geom_boxplot(outlier.shape = NA, notch=FALSE) + #boxplot
geom_jitter(width=0.2,alpha=0.05) + #jitters
labs(title="p_Via_Gibert", x="Population", y = "ProportionEggtoAdultSurvival") #axis labels
p_Via_Gibert + coord_cartesian(ylim = c(min_Via, max_Via)) + droseu_theme #y-axis limits and droseu_theme
dev.off()
LINEAR MODELS
Here is an example code for linear models (egg-to-adult development time, males, Gibert Lab). The very same code is used for other contributing labs and traits by filtering the data at supervisor level (for females and males separately, if applicable), adding or removing factors if they cause singularity problems (i.e. if only one replicate vial has been phenotyped per line and/or population and/or batch, the lowest level [ replicate_vial in this example] has been dropped from given model).
DT_A_M_lmer_Gibert <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + #Line (random) is nested in Population (fixed)
(1|Batch) + #Batch is a random effect
(1|ReplicateVial : Line), #Replicate vial (random) is nested in Line (random)
data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Gibert",]) #Filter by Lab in development time, males data
capture.output(summary(DT_A_M_lmer_Gibert),file = "DevelopmentTime/DT_A_M_lmer_Gibert_sum.txt") #save output summary
capture.output(anova(DT_A_M_lmer_Gibert),file = "DevelopmentTime/DT_A_M_lmer_Gibert.txt") #save anova output
capture.output(emmeans(DT_A_M_lmer_Gibert, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Gibert_tk.txt") #run and save post-hoc test (tukey) output
anova(DT_A_M_lmer_Gibert) #print anova output
summary(DT_A_M_lmer_Gibert) #print model output summary
Please note that “Plots and Linear Models by Lab” are presented in alphabetical order.
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Gibert Lab :Cristina Vieira, Laurence Mouton, Natacha Kremer, Sonia Martinez, Patricia Gibert
Grath Lab : Ingo Müller, Sonja Grath
Hoedjes Lab : Hristina Kostic, Katja Hoedjes
Schmidt Lab : Ozan Kiratli, Yonatan Babore, Liam Forsythe, Paul Schmidt
Stamenkovic-Radak Lab : Marija Savic Veselinovic, Marija Tanaskovic, Aleksandra Patenkovic, Mihailo Jelic, Katarina Eric, Pavle Eric, Slobodan Davidovic, Marina Stamenkovic-Radak
Zwaan Lab : Joost van den Heuvel, Bas Zwaan
Reading data in R
d_Via <- read.csv("MasterSheets_Oct21_git/VIA_MasterSheet_Oct21.csv")
str(d_Via)
## 'data.frame': 2367 obs. of 12 variables:
## $ Supervisor.PI : chr "Gibert" "Gibert" "Gibert" "Gibert" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK10" ...
## $ ReplicateVialOld : int 1 2 3 1 2 3 1 2 3 1 ...
## $ ReplicateVial : chr "Gibert_1_AK1_1" "Gibert_1_AK1_2" "Gibert_1_AK1_3" "Gibert_1_AK10_1" ...
## $ ProportionEggtoAdultSurvival: num 0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
Factors need reformatting (i.e. Supervisor.PI should be coded as a factor, not character).
str(d_Via)
## 'data.frame': 2367 obs. of 12 variables:
## $ Supervisor.PI : chr "Gibert" "Gibert" "Gibert" "Gibert" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK10" ...
## $ ReplicateVialOld : int 1 2 3 1 2 3 1 2 3 1 ...
## $ ReplicateVial : chr "Gibert_1_AK1_1" "Gibert_1_AK1_2" "Gibert_1_AK1_3" "Gibert_1_AK10_1" ...
## $ ProportionEggtoAdultSurvival: num 0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_Via$Supervisor.PI <- as.factor(d_Via$Supervisor.PI)
d_Via$Diet <- as.factor(d_Via$Diet)
d_Via$Batch <- as.factor(d_Via$Batch)
d_Via$Population_Lat <- factor(d_Via$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Via$Population_Lon <- factor(d_Via$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Via$Population_Alt <- factor(d_Via$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Via$Line <- as.factor(d_Via$Line)
d_Via$ReplicateVial <- as.factor(d_Via$ReplicateVial)
d_Via$ProportionEggtoAdultSurvival <- as.numeric(d_Via$ProportionEggtoAdultSurvival)
d_Via$Country <- as.factor(d_Via$Country)
d_Via$Latitude <- as.numeric(d_Via$Latitude)
d_Via$Longitude <- as.numeric(d_Via$Longitude)
d_Via$Altitude <- as.numeric(d_Via$Altitude)
# Now they should be in the correct format, see below.
str(d_Via)
## 'data.frame': 2367 obs. of 15 variables:
## $ Supervisor.PI : Factor w/ 6 levels "Gibert","Grath",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 4 levels "1","2","3","4": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 172 levels "AK1","AK10","AK11",..: 1 1 1 2 2 2 4 4 4 9 ...
## $ ReplicateVialOld : int 1 2 3 1 2 3 1 2 3 1 ...
## $ ReplicateVial : Factor w/ 2367 levels "Gibert_1_AK1_1",..: 1 2 3 4 5 6 7 8 9 10 ...
## $ ProportionEggtoAdultSurvival: num 0.68 0.73 0.63 0.85 0.75 0.8 0.85 0.88 0.7 0.68 ...
## $ Country : Factor w/ 9 levels "Austria","Denmark",..: 3 3 3 3 3 3 3 3 3 3 ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : num 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
# Voila!
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
min_Via <- min(d_Via$ProportionEggtoAdultSurvival)
max_Via <- max(d_Via$ProportionEggtoAdultSurvival)
anova(Via_lmer_Gibert)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.6029 0.075362 8 154.72 8.1983 3.224e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Gibert)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +
## (1 | Batch)
## Data: d_Via[d_Via$Supervisor.PI == "Gibert", ]
##
## REML criterion at convergence: -687.4
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -4.8895 -0.5220 0.0038 0.5549 2.4861
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 1.064e-02 0.103146
## Batch (Intercept) 6.195e-05 0.007871
## Residual 9.192e-03 0.095877
## Number of obs: 532, groups: Line:Population, 169; Batch, 3
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.75693 0.02658 51.26227 28.476 < 2e-16 ***
## PopulationGI -0.14773 0.03986 155.28178 -3.706 0.000292 ***
## PopulationKA -0.03422 0.03696 155.95970 -0.926 0.355981
## PopulationMA -0.11278 0.03691 154.48413 -3.056 0.002647 **
## PopulationMU -0.03629 0.03692 155.28351 -0.983 0.327104
## PopulationRE -0.11002 0.03921 155.98273 -2.806 0.005655 **
## PopulationUM -0.04241 0.03792 155.09608 -1.118 0.265136
## PopulationVA -0.12079 0.03692 155.28351 -3.272 0.001316 **
## PopulationYE -0.24601 0.03692 155.28351 -6.664 4.38e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.640
## PopulatinKA -0.691 0.462
## PopulatinMA -0.693 0.463 0.500
## PopulatinMU -0.692 0.463 0.500 0.500
## PopulatinRE -0.651 0.437 0.470 0.470 0.471
## PopulatinUM -0.673 0.451 0.487 0.487 0.487 0.458
## PopulatinVA -0.692 0.463 0.500 0.500 0.500 0.471 0.487
## PopulatinYE -0.692 0.463 0.500 0.500 0.500 0.471 0.487 0.500
anova(Via_lmer_Grath)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.07035 0.035175 2 27.293 2.1926 0.1309
summary(Via_lmer_Grath)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population)
## Data: d_Via[d_Via$Supervisor.PI == "Grath", ]
##
## REML criterion at convergence: -155.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.14211 -0.56745 0.04161 0.55412 2.60033
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.003394 0.05826
## Residual 0.016043 0.12666
## Number of obs: 147, groups: Line:Population, 30
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.69027 0.02612 28.41694 26.424 <2e-16 ***
## PopulationMU -0.07424 0.03664 27.57805 -2.026 0.0525 .
## PopulationRE -0.05444 0.03664 27.57805 -1.486 0.1487
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltMU
## PopulatinMU -0.713
## PopulatinRE -0.713 0.508
anova(Via_lmer_Hoedjes)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.35451 0.044314 8 158 6.1992 5.871e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Hoedjes)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +
## (1 | Batch)
## Data: d_Via[d_Via$Supervisor.PI == "Hoedjes", ]
##
## REML criterion at convergence: -712.5
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.7848 -0.5126 -0.0026 0.5498 2.7446
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 1.219e-02 1.104e-01
## Batch (Intercept) 2.196e-12 1.482e-06
## Residual 7.148e-03 8.455e-02
## Number of obs: 501, groups: Line:Population, 167; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.77450 0.02699 157.99983 28.694 < 2e-16 ***
## PopulationGI -0.17183 0.04123 157.99984 -4.168 5.06e-05 ***
## PopulationKA -0.05633 0.03817 157.99984 -1.476 0.141995
## PopulationMA -0.06600 0.03817 157.99984 -1.729 0.085761 .
## PopulationMU -0.03500 0.03817 157.99984 -0.917 0.360593
## PopulationRE -0.15117 0.04123 157.99985 -3.666 0.000336 ***
## PopulationUM -0.08960 0.03982 157.99985 -2.250 0.025827 *
## PopulationVA -0.09367 0.03817 157.99984 -2.454 0.015222 *
## PopulationYE -0.21483 0.03817 157.99984 -5.628 8.11e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.655
## PopulatinKA -0.707 0.463
## PopulatinMA -0.707 0.463 0.500
## PopulatinMU -0.707 0.463 0.500 0.500
## PopulatinRE -0.655 0.429 0.463 0.463 0.463
## PopulatinUM -0.678 0.444 0.479 0.479 0.479 0.444
## PopulatinVA -0.707 0.463 0.500 0.500 0.500 0.463 0.479
## PopulatinYE -0.707 0.463 0.500 0.500 0.500 0.463 0.479 0.500
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular
## quartz_off_screen
## 2
anova(Via_lm_Schmidt) #lm()` is used only for Schmidt Lab's viability data, as only one vial per line was phenotyped
## Analysis of Variance Table
##
## Response: ProportionEggtoAdultSurvival
## Df Sum Sq Mean Sq F value Pr(>F)
## Population 8 1.0046 0.125579 2.5425 0.01256 *
## Residuals 153 7.5570 0.049392
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lm_Schmidt)
##
## Call:
## lm(formula = ProportionEggtoAdultSurvival ~ Population, data = d_Via[d_Via$Supervisor.PI ==
## "Schmidt", ])
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.48129 -0.19237 0.02616 0.16173 0.51871
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.625157 0.049695 12.580 <2e-16 ***
## PopulationGI -0.143866 0.075911 -1.895 0.0600 .
## PopulationKA 0.135186 0.070280 1.924 0.0563 .
## PopulationMA 0.007477 0.072206 0.104 0.9177
## PopulationMU -0.052544 0.070280 -0.748 0.4558
## PopulationRE 0.004666 0.075911 0.061 0.9511
## PopulationUM 0.085505 0.077444 1.104 0.2713
## PopulationVA -0.041436 0.070280 -0.590 0.5563
## PopulationYE -0.087422 0.070280 -1.244 0.2154
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.2222 on 153 degrees of freedom
## Multiple R-squared: 0.1173, Adjusted R-squared: 0.07119
## F-statistic: 2.542 on 8 and 153 DF, p-value: 0.01256
anova(Via_lmer_StamenkovicRadak)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.39276 0.049095 8 155.26 5.0862 1.243e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_StamenkovicRadak)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +
## (1 | Batch)
## Data: d_Via[d_Via$Supervisor.PI == "StamenkovicRadak", ]
##
## REML criterion at convergence: -589.4
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.6754 -0.5185 0.0052 0.5759 2.2517
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.013176 0.11479
## Batch (Intercept) 0.001207 0.03475
## Residual 0.009652 0.09825
## Number of obs: 501, groups: Line:Population, 167; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.67693 0.03355 21.98005 20.176 1.13e-15 ***
## PopulationGI -0.07436 0.04570 155.38082 -1.627 0.10573
## PopulationKA -0.02793 0.04054 155.23842 -0.689 0.49191
## PopulationMA -0.12034 0.04051 155.10198 -2.971 0.00344 **
## PopulationMU 0.02403 0.04051 155.08224 0.593 0.55386
## PopulationRE -0.05090 0.04302 155.34042 -1.183 0.23859
## PopulationUM -0.08775 0.04168 155.34524 -2.106 0.03685 *
## PopulationVA -0.11615 0.04051 155.10172 -2.867 0.00472 **
## PopulationYE -0.18226 0.04054 155.23842 -4.496 1.35e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.535
## PopulatinKA -0.606 0.443
## PopulatinMA -0.603 0.441 0.499
## PopulatinMU -0.605 0.442 0.500 0.500
## PopulatinRE -0.571 0.415 0.472 0.471 0.472
## PopulatinUM -0.590 0.429 0.488 0.486 0.487 0.460
## PopulatinVA -0.604 0.445 0.500 0.499 0.500 0.470 0.485
## PopulatinYE -0.606 0.443 0.501 0.499 0.500 0.472 0.488 0.500
anova(Via_lmer_Zwaan)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 1.1594 0.14492 8 151.78 6.6463 1.944e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Via_lmer_Zwaan)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ProportionEggtoAdultSurvival ~ Population + (1 | Line:Population) +
## (1 | Batch)
## Data: d_Via[d_Via$Supervisor.PI == "Zwaan", ]
##
## REML criterion at convergence: -328.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.8665 -0.4405 0.1045 0.5674 2.7223
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.01052 0.1025
## Batch (Intercept) 0.00000 0.0000
## Residual 0.02180 0.1477
## Number of obs: 524, groups: Line:Population, 169; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.753292 0.029612 148.129254 25.439 < 2e-16 ***
## PopulationGI -0.109677 0.045264 147.538931 -2.423 0.0166 *
## PopulationKA 0.006964 0.042022 149.533027 0.166 0.8686
## PopulationMA -0.039616 0.042055 150.208886 -0.942 0.3477
## PopulationMU -0.045938 0.042393 153.358912 -1.084 0.2802
## PopulationRE -0.107348 0.044247 145.966515 -2.426 0.0165 *
## PopulationUM 0.025615 0.043113 148.966551 0.594 0.5533
## PopulationVA -0.020760 0.042344 153.060112 -0.490 0.6247
## PopulationYE -0.226033 0.042298 153.374414 -5.344 3.24e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.654
## PopulatinKA -0.705 0.461
## PopulatinMA -0.704 0.461 0.496
## PopulatinMU -0.698 0.457 0.492 0.492
## PopulatinRE -0.669 0.438 0.472 0.471 0.467
## PopulatinUM -0.687 0.449 0.484 0.484 0.480 0.460
## PopulatinVA -0.699 0.457 0.493 0.492 0.488 0.468 0.480
## PopulatinYE -0.700 0.458 0.493 0.493 0.489 0.469 0.481 0.490
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular
d_Via_popmeans <- d_Via %>% group_by(Supervisor.PI, Population) %>%
summarise_at(vars(ProportionEggtoAdultSurvival), list(Mean = mean))
write.csv(d_Via_popmeans,file = "Viability/d_Via_popmeans.csv", row.names = T )
There are 3 populations and 29 isofemale lines that have been phenotyped across the labs. Please refer to tables named intersect_Trait_level (i.e. intersect_Via_pop) for details.
#### FIX PARTIAL DATA
d_Via_popmeans <- d_Via %>% group_by(Supervisor.PI, Population) %>%
summarise_at(vars(ProportionEggtoAdultSurvival), list(Mean = mean))
write.csv(d_Via_popmeans,file = "Viability/d_Via_popmeans.csv", row.names = T )
d_Via_pop_GibGra <- cor(d_Via_popmeans$Population[d_Via_popmeans$Population == "AK", "MU", "RE"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Gibert"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Grath" ])
d_Via_pop_GibHoe <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Gibert"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Hoedjes"])
d_Via_pop_GibSch <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Gibert"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Schmidt"])
d_Via_pop_GibStR <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Gibert"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "StamenkovicRadak"])
d_Via_pop_GibZwa <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Gibert"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Zwaan"])
d_Via_pop_GraHoe <- cor(d_Via_popmeans$Population[d_Via_popmeans$Population == "AK", "MU", "RE"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Grath"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Hoedjes"])
d_Via_pop_GraSch <- cor(d_Via_popmeans$Population[d_Via_popmeans$Population == "AK", "MU", "RE"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Grath"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Schmidt"])
d_Via_pop_GraStR <- cor(d_Via_popmeans$Population[d_Via_popmeans$Population == "AK", "MU", "RE"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Grath"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "StamenkovicRadak"])
d_Via_pop_GraZwa <- cor(d_Via_popmeans$Population[d_Via_popmeans$Population == "AK", "MU", "RE"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Grath"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Zwaan"])
d_Via_pop_HoeSch <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Hoedjes"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Schmidt"])
d_Via_pop_HoeStR <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Hoedjes"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "StamenkovicRadak"])
d_Via_pop_HoeZwa <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Hoedjes"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Zwaan"])
d_Via_pop_SchStR <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Schmidt"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "StamenkovicRadak"])
d_Via_pop_SchZwa <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Schmidt"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Zwaan"])
d_Via_pop_StRZwa <- cor(d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "StamenkovicRadak"],
d_Via_popmeans$Mean[d_Via_popmeans$Supervisor.PI == "Zwaan"])
cor_Via_pop <- list(d_Via_pop_GibGra = d_Via_pop_GibGra,
d_Via_pop_GibHoe = d_Via_pop_GibHoe,
d_Via_pop_GibSch = d_Via_pop_GibSch,
d_Via_pop_GibStR = d_Via_pop_GibStR,
d_Via_pop_GibZwa = d_Via_pop_GibZwa,
d_Via_pop_GraHoe = d_Via_pop_GraHoe,
d_Via_pop_GraSch = d_Via_pop_GraSch,
d_Via_pop_GraStR = d_Via_pop_GraStR,
d_Via_pop_GraZwa = d_Via_pop_GraZwa,
d_Via_pop_HoeSch = d_Via_pop_HoeSch,
d_Via_pop_HoeStR = d_Via_pop_HoeStR,
d_Via_pop_HoeZwa = d_Via_pop_HoeZwa,
d_Via_pop_SchStR = d_Via_pop_SchStR,
d_Via_pop_SchZwa = d_Via_pop_SchZwa,
d_Via_pop_StRZwa = d_Via_pop_StRZwa)
write.csv(cor_Via_pop,file = "Viability/cor_Via_pop.csv", row.names = T)
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Schmidt Lab : Paul Schmidt
Reading data in R
d_DT_P <- read.csv("MasterSheets_Oct21_git/DTP_MasterSheet_Oct21.csv")
str(d_DT_P) #Factors need reformatting
## 'data.frame': 3391 obs. of 13 variables:
## $ Supervisor.PI : chr "Schmidt" "Schmidt" "Schmidt" "Schmidt" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "VA" "VA" "VA" "VA" ...
## $ Line : chr "VA35" "VA35" "VA35" "VA35" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DT_EggPupa : int 120 120 120 120 136 136 136 136 136 136 ...
## $ Country : chr "Russia" "Russia" "Russia" "Russia" ...
## $ Latitude : num 58 58 58 58 58 ...
## $ Longitude : num 33.2 33.2 33.2 33.2 33.2 ...
## $ Altitude : int 217 217 217 217 217 217 217 217 217 217 ...
d_DT_P$Supervisor.PI <- as.factor(d_DT_P$Supervisor.PI)
d_DT_P$Diet <- as.factor(d_DT_P$Diet)
d_DT_P$Batch <- as.factor(d_DT_P$Batch)
d_DT_P$Population_Lat <- factor(d_DT_P$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_DT_P$Population_Lon <- factor(d_DT_P$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_DT_P$Population_Alt <- factor(d_DT_P$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_DT_P$Line <- as.factor(d_DT_P$Line)
d_DT_P$ReplicateVial <- as.factor(d_DT_P$ReplicateVial)
d_DT_P$DT_EggPupa <- as.numeric(d_DT_P$DT_EggPupa)
str(d_DT_P) #They should be ok now.
## 'data.frame': 3391 obs. of 16 variables:
## $ Supervisor.PI : Factor w/ 1 level "Schmidt": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 1 level "1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "VA" "VA" "VA" "VA" ...
## $ Line : Factor w/ 161 levels "AK1","AK10","AK11",..: 131 131 131 131 131 131 131 131 131 131 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 161 levels "Schmidt_1_AK1_1",..: 131 131 131 131 131 131 131 131 131 131 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DT_EggPupa : num 120 120 120 120 136 136 136 136 136 136 ...
## $ Country : chr "Russia" "Russia" "Russia" "Russia" ...
## $ Latitude : num 58 58 58 58 58 ...
## $ Longitude : num 33.2 33.2 33.2 33.2 33.2 ...
## $ Altitude : int 217 217 217 217 217 217 217 217 217 217 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 8 8 8 8 8 8 8 8 8 8 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 6 6 6 6 6 6 6 6 6 6 ...
#Note that the trait has been phenotyped only in Schmidt lab and in one batch.
Descriptive statistics at the line level :
Descriptive statistics at the population level:
min_d_DT_P
## [1] 96
max_d_DT_P
## [1] 192
y-axis is scaled by the minimum (96) and maximum (192) values in the full data set.
pdf(file="DevelopmentTime/p_DT_P_Schmidt.pdf",width=8, height=5)
p_DT_P_Schmidt <- ggplot(data = (subset(d_DT_P,Supervisor.PI=='Schmidt')), aes(x=Population_Lat, y=DT_EggPupa, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_P_Schmidt", x="Population", y = "DT_EggPupa")
dev.off()
## quartz_off_screen
## 2
p_DT_P_Schmidt + coord_cartesian(ylim = c(min_d_DT_P, max_d_DT_P))+ droseu_theme
invisible(dev.off())
DT_P_lmer <- lmer(DT_EggPupa ~ Population + (1|Population:Line), data = d_DT_P)
capture.output(summary(DT_P_lmer),file = "DevelopmentTime/DT_P_lmer_sum.txt")
capture.output(anova(DT_P_lmer),file = "DevelopmentTime/DT_P_F_lmer.txt")
capture.output(emmeans(DT_P_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_P_tk.txt")
anova(DT_P_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 2515.1 314.38 8 147.95 2.6412 0.009804 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_P_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggPupa ~ Population + (1 | Population:Line)
## Data: d_DT_P
##
## REML criterion at convergence: 26303.9
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.9734 -0.6092 -0.0831 0.3912 4.7796
##
## Random effects:
## Groups Name Variance Std.Dev.
## Population:Line (Intercept) 158.4 12.59
## Residual 119.0 10.91
## Number of obs: 3391, groups: Population:Line, 161
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 127.5020 2.8668 143.5783 44.475 < 2e-16 ***
## PopulationGI 12.9203 4.7140 157.7547 2.741 0.00684 **
## PopulationKA -0.2098 4.0656 144.7480 -0.052 0.95892
## PopulationMA 4.5016 4.1179 144.9709 1.093 0.27613
## PopulationMU 2.2279 4.0527 143.3696 0.550 0.58337
## PopulationRE 7.7677 4.4068 146.8919 1.763 0.08004 .
## PopulationUM 3.6588 4.3705 142.4818 0.837 0.40391
## PopulationVA 13.2633 4.1248 145.8807 3.215 0.00160 **
## PopulationYE 7.6982 4.0711 145.8355 1.891 0.06062 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.608
## PopulatinKA -0.705 0.429
## PopulatinMA -0.696 0.423 0.491
## PopulatinMU -0.707 0.430 0.499 0.492
## PopulatinRE -0.651 0.396 0.459 0.453 0.460
## PopulatinUM -0.656 0.399 0.463 0.457 0.464 0.427
## PopulatinVA -0.695 0.423 0.490 0.484 0.492 0.452 0.456
## PopulatinYE -0.704 0.428 0.497 0.490 0.498 0.458 0.462 0.489
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Gibert Lab : Cristina Vieira, Laurence Mouton, Natacha Kremer, Sonia Martinez, Patricia Gibert
Grath Lab : Ingo Müller, Sonja Grath
Hoedjes Lab : Hristina Kostic, Katja Hoedjes
Schmidt Lab : Ozan Kiratli, Yonatan Babore, Liam Forsythe, Paul Schmidt
Stamenkovic-Radak Lab : Marija Savic Veselinovic, Marija Tanaskovic, Aleksandra Patenkovic, Mihailo Jelic, Katarina Eric, Pavle Eric, Slobodan Davidovic, Marina Stamenkovic-Radak
Zwaan Lab : Joost van den Heuvel, Bas Zwaan
d_DT_A <- read.csv("MasterSheets_Oct21_git/DTA_MasterSheet_Oct21.csv")
str(d_DT_A) #Factors need reformatting
## 'data.frame': 57609 obs. of 14 variables:
## $ Supervisor.PI : chr "Gibert" "Gibert" "Gibert" "Gibert" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Gibert_1_AK1_1" "Gibert_1_AK1_1" "Gibert_1_AK1_1" "Gibert_1_AK1_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DT_EggAdult : num 202 202 202 202 202 202 202 202 202 202 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_DT_A$Supervisor.PI <- as.factor(d_DT_A$Supervisor.PI)
d_DT_A$Diet <- as.factor(d_DT_A$Diet)
d_DT_A$Batch <- as.factor(d_DT_A$Batch)
d_DT_A$Population_Lat <- factor(d_DT_A$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_DT_A$Population_Lon <- factor(d_DT_A$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_DT_A$Population_Alt <- factor(d_DT_A$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_DT_A$Line <- as.factor(d_DT_A$Line)
d_DT_A$Sex <- as.factor(d_DT_A$Sex)
d_DT_A$ReplicateVial <- as.factor(d_DT_A$ReplicateVial)
d_DT_A$DT_EggAdult <- as.numeric(d_DT_A$DT_EggAdult)
str(d_DT_A) #They should be ok now.
## 'data.frame': 57609 obs. of 17 variables:
## $ Supervisor.PI : Factor w/ 6 levels "Gibert","Grath",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 4 levels "1","2","3","4": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 171 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 2300 levels "Gibert_1_AK1_1",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DT_EggAdult : num 202 202 202 202 202 202 202 202 202 202 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
#Create data sheets for females (d_DT_A_F) and males (d_DT_A_M), by sorting at sex level.
d_DT_A_F <-subset(d_DT_A,Sex=='F')
d_DT_A_M <-subset(d_DT_A,Sex=='M')
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
pdf(file="DevelopmentTime/p_DT_A_F_Gibert.pdf",width=8, height=5)
p_DT_A_F_Gibert <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='Gibert')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_Gibert", x="Population", y = "DT_EggAdult")
p_DT_A_F_Gibert + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_Gibert <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "Gibert",])
capture.output(summary(DT_A_F_lmer_Gibert),file = "DevelopmentTime/DT_A_F_lmer_Gibert_sum.txt")
capture.output(anova(DT_A_F_lmer_Gibert),file = "DevelopmentTime/DT_A_F_lmer_Gibert.txt")
capture.output(emmeans(DT_A_F_lmer_Gibert, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_Gibert_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6817' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6817)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6817' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6817)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_F_lmer_Gibert)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 2839.4 354.93 8 157.74 3.7809 0.0004399 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_F_lmer_Gibert)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "Gibert", ]
##
## REML criterion at convergence: 50925
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.4211 -0.5914 -0.1334 0.4381 5.9468
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 4.727 2.174
## Line:Population (Intercept) 36.110 6.009
## Batch (Intercept) 1.175 1.084
## Residual 93.874 9.689
## Number of obs: 6817, groups:
## ReplicateVial:Line, 531; Line:Population, 169; Batch, 3
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 222.3797 1.5710 19.3362 141.556 <2e-16 ***
## PopulationGI 4.3367 2.1688 156.6501 2.000 0.0473 *
## PopulationKA 0.9782 2.0009 154.4950 0.489 0.6256
## PopulationMA -0.2899 2.0046 155.4376 -0.145 0.8852
## PopulationMU 1.3078 2.0003 154.3141 0.654 0.5142
## PopulationRE 5.4719 2.1366 158.5080 2.561 0.0114 *
## PopulationUM 3.1059 2.0547 154.2259 1.512 0.1327
## PopulationVA 1.5098 2.0056 155.9084 0.753 0.4527
## PopulationYE -4.5778 2.0223 160.6684 -2.264 0.0249 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.572
## PopulatinKA -0.620 0.461
## PopulatinMA -0.619 0.460 0.500
## PopulatinMU -0.621 0.461 0.501 0.500
## PopulatinRE -0.581 0.433 0.469 0.467 0.469
## PopulatinUM -0.604 0.449 0.488 0.487 0.488 0.456
## PopulatinVA -0.619 0.460 0.500 0.499 0.500 0.467 0.487
## PopulatinYE -0.614 0.456 0.496 0.495 0.496 0.463 0.483 0.494
pdf(file="DevelopmentTime/p_DT_A_M_Gibert.pdf",width=8, height=5)
p_DT_A_M_Gibert <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='Gibert')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_Gibert", x="Population", y = "DT_EggAdult")
p_DT_A_M_Gibert + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_Gibert <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Gibert",])
capture.output(summary(DT_A_M_lmer_Gibert),file = "DevelopmentTime/DT_A_M_lmer_Gibert_sum.txt")
capture.output(anova(DT_A_M_lmer_Gibert),file = "DevelopmentTime/DT_A_M_lmer_Gibert.txt")
capture.output(emmeans(DT_A_M_lmer_Gibert, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Gibert_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6566' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6566)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6566' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6566)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_M_lmer_Gibert)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 2526.4 315.8 8 155.05 2.9617 0.004119 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_M_lmer_Gibert)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "Gibert", ]
##
## REML criterion at convergence: 49809.5
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.4032 -0.6057 -0.1597 0.4187 5.0802
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 3.6928 1.9217
## Line:Population (Intercept) 31.0297 5.5704
## Batch (Intercept) 0.6211 0.7881
## Residual 106.6292 10.3261
## Number of obs: 6566, groups:
## ReplicateVial:Line, 533; Line:Population, 169; Batch, 3
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 226.5155 1.4120 30.2571 160.427 < 2e-16 ***
## PopulationGI 5.3606 2.0277 153.6251 2.644 0.00905 **
## PopulationKA 0.7077 1.8726 152.1759 0.378 0.70601
## PopulationMA -1.2153 1.8789 154.0130 -0.647 0.51870
## PopulationMU 1.2857 1.8708 151.6666 0.687 0.49300
## PopulationRE 2.0681 1.9870 152.3834 1.041 0.29961
## PopulationUM 3.2574 1.9227 151.8288 1.694 0.09227 .
## PopulationVA 1.8677 1.8759 153.1712 0.996 0.32100
## PopulationYE -2.9951 1.8932 158.5817 -1.582 0.11564
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.600
## PopulatinKA -0.650 0.460
## PopulatinMA -0.648 0.458 0.497
## PopulatinMU -0.650 0.460 0.499 0.498
## PopulatinRE -0.612 0.434 0.469 0.468 0.470
## PopulatinUM -0.633 0.448 0.486 0.484 0.486 0.457
## PopulatinVA -0.649 0.459 0.498 0.496 0.498 0.469 0.485
## PopulatinYE -0.643 0.455 0.493 0.492 0.494 0.464 0.480 0.492
pdf(file="DevelopmentTime/p_DT_A_F_Grath.pdf",width=8, height=5)
p_DT_A_F_Grath <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='Grath')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_Grath", x="Population", y = "DT_EggAdult")
p_DT_A_F_Grath + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_Grath <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|ReplicateVial : Line), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "Grath",])
## boundary (singular) fit: see ?isSingular
capture.output(summary(DT_A_F_lmer_Grath),file = "DevelopmentTime/DT_A_F_lmer_Grath_sum.txt")
capture.output(anova(DT_A_F_lmer_Grath),file = "DevelopmentTime/DT_A_F_lmer_Grath.txt")
capture.output(emmeans(DT_A_F_lmer_Grath, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_Grath_tk.txt")
anova(DT_A_F_lmer_Grath)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 438.5 219.25 2 82.946 1.3113 0.275
summary(DT_A_F_lmer_Grath)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## DT_EggAdult ~ Population + (1 | Line:Population) + (1 | ReplicateVial:Line)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "Grath", ]
##
## REML criterion at convergence: 7270.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.3008 -0.6157 -0.0902 0.5802 4.6430
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 178.3 13.35
## Line:Population (Intercept) 0.0 0.00
## Residual 167.2 12.93
## Number of obs: 890, groups: ReplicateVial:Line, 86; Line:Population, 23
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 308.889 2.309 79.482 133.763 <2e-16 ***
## PopulationMU -2.823 3.225 81.273 -0.875 0.384
## PopulationRE 5.399 5.290 83.961 1.021 0.310
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltMU
## PopulatinMU -0.716
## PopulatinRE -0.437 0.313
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular
pdf(file="DevelopmentTime/p_DT_A_M_Grath.pdf",width=8, height=5)
p_DT_A_M_Grath <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='Grath')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_Grath", x="Population", y = "DT_EggAdult")
p_DT_A_M_Grath + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_Grath <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|ReplicateVial : Line), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Grath",])
## boundary (singular) fit: see ?isSingular
capture.output(summary(DT_A_M_lmer_Grath),file = "DevelopmentTime/DT_A_M_lmer_Grath_sum.txt")
capture.output(anova(DT_A_M_lmer_Grath),file = "DevelopmentTime/DT_A_M_lmer_Grath.txt")
capture.output(emmeans(DT_A_M_lmer_Grath, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Grath_tk.txt")
anova(DT_A_M_lmer_Grath)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 335.31 167.66 2 80.467 0.9406 0.3946
summary(DT_A_M_lmer_Grath)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## DT_EggAdult ~ Population + (1 | Line:Population) + (1 | ReplicateVial:Line)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "Grath", ]
##
## REML criterion at convergence: 7245.1
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.5785 -0.6958 0.0232 0.5468 3.5585
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 167.7 12.95
## Line:Population (Intercept) 0.0 0.00
## Residual 178.2 13.35
## Number of obs: 881, groups: ReplicateVial:Line, 86; Line:Population, 23
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 317.589 2.258 79.668 140.654 <2e-16 ***
## PopulationMU -4.292 3.152 81.107 -1.362 0.177
## PopulationRE -1.414 5.107 79.678 -0.277 0.783
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltMU
## PopulatinMU -0.716
## PopulatinRE -0.442 0.317
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular
pdf(file="DevelopmentTime/p_DT_A_F_Hoedjes.pdf",width=8, height=5)
p_DT_A_F_Hoedjes <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='Hoedjes')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_Hoedjes", x="Population", y = "DT_EggAdult")
p_DT_A_F_Hoedjes + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_Hoedjes <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "Hoedjes",])
capture.output(summary(DT_A_F_lmer_Hoedjes),file = "DevelopmentTime/DT_A_F_lmer_Hoedjes_sum.txt")
capture.output(anova(DT_A_F_lmer_Hoedjes),file = "DevelopmentTime/DT_A_F_lmer_Hoedjes.txt")
capture.output(emmeans(DT_A_F_lmer_Hoedjes, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_Hoedjes_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6939' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6939)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6939' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6939)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_F_lmer_Hoedjes)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 6899 862.38 8 155.01 5.6745 2.514e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_F_lmer_Hoedjes)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "Hoedjes", ]
##
## REML criterion at convergence: 54971.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.7059 -0.5552 -0.1930 0.3779 12.7479
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 4.685 2.164
## Line:Population (Intercept) 21.642 4.652
## Batch (Intercept) 1.381 1.175
## Residual 151.975 12.328
## Number of obs: 6939, groups:
## ReplicateVial:Line, 501; Line:Population, 167; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 231.2781 1.2896 30.0406 179.348 < 2e-16 ***
## PopulationGI 6.6655 1.7839 155.6038 3.737 0.000261 ***
## PopulationKA -0.1798 1.6299 148.2949 -0.110 0.912318
## PopulationMA 1.9330 1.6342 149.8397 1.183 0.238743
## PopulationMU -1.7771 1.6284 147.7808 -1.091 0.276922
## PopulationRE 6.4500 1.7845 154.0927 3.614 0.000407 ***
## PopulationUM 0.9172 1.7105 151.0393 0.536 0.592592
## PopulationVA -1.3977 1.6366 150.5099 -0.854 0.394424
## PopulationYE 1.8985 1.6491 154.8806 1.151 0.251422
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.573
## PopulatinKA -0.627 0.453
## PopulatinMA -0.625 0.452 0.495
## PopulatinMU -0.628 0.454 0.497 0.495
## PopulatinRE -0.573 0.420 0.453 0.452 0.454
## PopulatinUM -0.597 0.435 0.473 0.471 0.473 0.439
## PopulatinVA -0.624 0.451 0.494 0.493 0.494 0.451 0.471
## PopulatinYE -0.620 0.448 0.490 0.489 0.491 0.448 0.467 0.488
pdf(file="DevelopmentTime/p_DT_A_M_Hoedjes.pdf",width=8, height=5)
p_DT_A_M_Hoedjes <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='Hoedjes')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_Hoedjes", x="Population", y = "DT_EggAdult")
p_DT_A_M_Hoedjes + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_Hoedjes <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Hoedjes",])
capture.output(summary(DT_A_M_lmer_Hoedjes),file = "DevelopmentTime/DT_A_M_lmer_Hoedjes_sum.txt")
capture.output(anova(DT_A_M_lmer_Hoedjes),file = "DevelopmentTime/DT_A_M_lmer_Hoedjes.txt")
capture.output(emmeans(DT_A_M_lmer_Hoedjes, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Hoedjes_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6649' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6649)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6649' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6649)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_M_lmer_Hoedjes)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 9369.8 1171.2 8 153.78 5.7073 2.332e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_M_lmer_Hoedjes)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "Hoedjes", ]
##
## REML criterion at convergence: 54596.2
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -6.8700 -0.5946 -0.0822 0.3611 10.9394
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 3.107 1.763
## Line:Population (Intercept) 24.219 4.921
## Batch (Intercept) 2.565 1.602
## Residual 205.215 14.325
## Number of obs: 6649, groups:
## ReplicateVial:Line, 501; Line:Population, 167; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 238.6853 1.4661 19.7755 162.803 < 2e-16 ***
## PopulationGI 5.9614 1.8999 154.5025 3.138 0.00204 **
## PopulationKA -2.5325 1.7402 149.2985 -1.455 0.14768
## PopulationMA 0.6822 1.7356 147.7901 0.393 0.69486
## PopulationMU -2.1539 1.7370 148.2171 -1.240 0.21695
## PopulationRE 5.7531 1.9095 155.4192 3.013 0.00302 **
## PopulationUM -0.9229 1.8237 150.9070 -0.506 0.61354
## PopulationVA -2.8591 1.7426 149.9496 -1.641 0.10294
## PopulationYE 0.5190 1.7673 157.2861 0.294 0.76941
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.542
## PopulatinKA -0.591 0.456
## PopulatinMA -0.593 0.458 0.499
## PopulatinMU -0.592 0.457 0.499 0.500
## PopulatinRE -0.539 0.423 0.454 0.455 0.455
## PopulatinUM -0.564 0.439 0.475 0.477 0.476 0.442
## PopulatinVA -0.590 0.456 0.497 0.499 0.498 0.454 0.475
## PopulatinYE -0.582 0.449 0.490 0.492 0.491 0.446 0.468 0.490
pdf(file="DevelopmentTime/p_DT_A_F_Schmidt.pdf",width=8, height=5)
p_DT_A_F_Schmidt <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='Schmidt')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_Schmidt", x="Population", y = "DT_EggAdult")
p_DT_A_F_Schmidt + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_Schmidt <- lmer(DT_EggAdult ~ Population + (1|Line:Population), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "Schmidt",])
capture.output(summary(DT_A_F_lmer_Schmidt),file = "DevelopmentTime/DT_A_F_lmer_Schmidt_sum.txt")
capture.output(anova(DT_A_F_lmer_Schmidt),file = "DevelopmentTime/DT_A_F_lmer_Schmidt.txt")
capture.output(emmeans(DT_A_F_lmer_Schmidt, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_Schmidt_tk.txt")
anova(DT_A_F_lmer_Schmidt)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 5630 703.75 8 145.04 3.2466 0.001981 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_F_lmer_Schmidt)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "Schmidt", ]
##
## REML criterion at convergence: 14067.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.5685 -0.4672 -0.0841 0.3244 9.1996
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 382.1 19.55
## Residual 216.8 14.72
## Number of obs: 1664, groups: Line:Population, 159
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 218.139 4.503 141.010 48.438 < 2e-16 ***
## PopulationGI 8.468 7.686 149.902 1.102 0.2724
## PopulationKA 1.889 6.453 140.874 0.293 0.7702
## PopulationMA 6.233 6.472 142.375 0.963 0.3371
## PopulationMU 3.018 6.360 140.236 0.475 0.6358
## PopulationRE 11.911 6.954 145.726 1.713 0.0889 .
## PopulationUM 4.043 6.855 139.069 0.590 0.5563
## PopulationVA 27.489 6.428 145.350 4.276 3.42e-05 ***
## PopulationYE 4.227 6.424 145.516 0.658 0.5116
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.586
## PopulatinKA -0.698 0.409
## PopulatinMA -0.696 0.408 0.486
## PopulatinMU -0.708 0.415 0.494 0.493
## PopulatinRE -0.648 0.379 0.452 0.451 0.459
## PopulatinUM -0.657 0.385 0.459 0.457 0.465 0.425
## PopulatinVA -0.701 0.410 0.489 0.487 0.496 0.454 0.460
## PopulatinYE -0.701 0.411 0.489 0.488 0.496 0.454 0.461 0.491
pdf(file="DevelopmentTime/p_DT_A_M_Schmidt.pdf",width=8, height=5)
p_DT_A_M_Schmidt <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='Schmidt')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_Schmidt", x="Population", y = "DT_EggAdult")
p_DT_A_M_Schmidt + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_Schmidt <- lmer(DT_EggAdult ~ Population + (1|Line:Population), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Schmidt",])
capture.output(summary(DT_A_M_lmer_Schmidt),file = "DevelopmentTime/DT_A_M_lmer_Schmidt_sum.txt")
capture.output(anova(DT_A_M_lmer_Schmidt),file = "DevelopmentTime/DT_A_M_lmer_Schmidt.txt")
capture.output(emmeans(DT_A_M_lmer_Schmidt, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Schmidt_tk.txt")
anova(DT_A_M_lmer_Schmidt)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 7928.7 991.09 8 141.78 3.337 0.001575 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_M_lmer_Schmidt)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "Schmidt", ]
##
## REML criterion at convergence: 12831.8
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.8636 -0.4961 -0.1229 0.3065 7.0181
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 416.9 20.42
## Residual 297.0 17.23
## Number of obs: 1464, groups: Line:Population, 157
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 226.01305 4.74292 135.96600 47.653 < 2e-16 ***
## PopulationGI 17.10410 8.12581 145.23581 2.105 0.037021 *
## PopulationKA -6.09966 6.80201 136.33867 -0.897 0.371436
## PopulationMA 2.72810 6.84174 138.66550 0.399 0.690695
## PopulationMU 0.70330 6.79893 136.35220 0.103 0.917763
## PopulationRE 5.63782 7.36602 143.79829 0.765 0.445298
## PopulationUM 3.09168 7.23539 135.25026 0.427 0.669840
## PopulationVA 24.03542 6.84235 139.51268 3.513 0.000598 ***
## PopulationYE -0.07554 6.79153 142.33291 -0.011 0.991141
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.584
## PopulatinKA -0.697 0.407
## PopulatinMA -0.693 0.405 0.483
## PopulatinMU -0.698 0.407 0.486 0.484
## PopulatinRE -0.644 0.376 0.449 0.446 0.449
## PopulatinUM -0.656 0.383 0.457 0.454 0.457 0.422
## PopulatinVA -0.693 0.405 0.483 0.481 0.484 0.446 0.454
## PopulatinYE -0.698 0.408 0.487 0.484 0.487 0.450 0.458 0.484
pdf(file="DevelopmentTime/p_DT_A_F_StamenkovicRadak.pdf",width=8, height=5)
p_DT_A_F_StamenkovicRadak <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_StamenkovicRadak", x="Population", y = "DT_EggAdult")
p_DT_A_F_StamenkovicRadak + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_StamenkovicRadak <- lmer(DT_EggAdult ~ Population + (1|Line:Population)+ (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "StamenkovicRadak",])
capture.output(summary(DT_A_F_lmer_StamenkovicRadak),file = "DevelopmentTime/DT_A_F_lmer_StamenkovicRadak_sum.txt")
capture.output(anova(DT_A_F_lmer_StamenkovicRadak),file = "DevelopmentTime/DT_A_F_lmer_StamenkovicRadak.txt")
capture.output(emmeans(DT_A_F_lmer_StamenkovicRadak, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_StamenkovicRadak_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6200' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6200)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6200' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6200)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_F_lmer_StamenkovicRadak)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 14440 1805 8 153.46 5.9074 1.365e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_F_lmer_StamenkovicRadak)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "StamenkovicRadak", ]
##
## REML criterion at convergence: 54203.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.5991 -0.5815 -0.1328 0.3761 6.5733
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 148.74 12.196
## Line:Population (Intercept) 175.07 13.231
## Batch (Intercept) 40.54 6.367
## Residual 305.55 17.480
## Number of obs: 6200, groups:
## ReplicateVial:Line, 494; Line:Population, 165; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 237.62349 4.73424 10.93403 50.193 2.8e-14 ***
## PopulationGI 7.46572 5.50910 152.34033 1.355 0.177372
## PopulationKA -8.47287 4.88982 151.57662 -1.733 0.085173 .
## PopulationMA 8.62696 4.90527 153.46660 1.759 0.080619 .
## PopulationMU -0.06432 4.88517 151.27795 -0.013 0.989512
## PopulationRE 17.72312 5.18652 152.11258 3.417 0.000812 ***
## PopulationUM 15.29379 5.03496 153.01586 3.038 0.002805 **
## PopulationVA 14.15780 4.96021 152.63502 2.854 0.004913 **
## PopulationYE 2.45664 4.91461 154.56893 0.500 0.617882
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.469
## PopulatinKA -0.530 0.454
## PopulatinMA -0.526 0.452 0.510
## PopulatinMU -0.530 0.454 0.513 0.511
## PopulatinRE -0.500 0.427 0.484 0.482 0.484
## PopulatinUM -0.515 0.440 0.499 0.495 0.498 0.471
## PopulatinVA -0.521 0.450 0.504 0.504 0.505 0.475 0.489
## PopulatinYE -0.528 0.452 0.511 0.507 0.510 0.482 0.496 0.502
pdf(file="DevelopmentTime/p_DT_A_M_StamenkovicRadak.pdf",width=8, height=5)
p_DT_A_M_StamenkovicRadak <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_StamenkovicRadak", x="Population", y = "DT_EggAdult")
p_DT_A_M_StamenkovicRadak + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_StamenkovicRadak <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "StamenkovicRadak",])
capture.output(summary(DT_A_M_lmer_StamenkovicRadak),file = "DevelopmentTime/DT_A_M_lmer_StamenkovicRadak_sum.txt")
capture.output(anova(DT_A_M_lmer_StamenkovicRadak),file = "DevelopmentTime/DT_A_M_lmer_StamenkovicRadak.txt")
capture.output(emmeans(DT_A_M_lmer_StamenkovicRadak, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_StamenkovicRadak_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 5815' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 5815)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 5815' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 5815)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_M_lmer_StamenkovicRadak)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 15603 1950.3 8 153.79 5.9197 1.315e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_M_lmer_StamenkovicRadak)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "StamenkovicRadak", ]
##
## REML criterion at convergence: 51282.9
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.9954 -0.5866 -0.1542 0.3744 6.6404
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 152.27 12.340
## Line:Population (Intercept) 162.25 12.738
## Batch (Intercept) 37.14 6.094
## Residual 329.47 18.151
## Number of obs: 5815, groups:
## ReplicateVial:Line, 494; Line:Population, 165; Batch, 4
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 242.718 4.584 11.349 52.952 6e-15 ***
## PopulationGI 9.006 5.388 152.718 1.671 0.096703 .
## PopulationKA -7.893 4.781 151.809 -1.651 0.100849
## PopulationMA 7.749 4.789 152.779 1.618 0.107700
## PopulationMU 1.406 4.775 151.260 0.294 0.768857
## PopulationRE 16.917 5.070 152.105 3.337 0.001065 **
## PopulationUM 14.365 4.933 154.211 2.912 0.004124 **
## PopulationVA 16.666 4.847 152.554 3.438 0.000755 ***
## PopulationYE 3.325 4.805 154.681 0.692 0.490005
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.473
## PopulatinKA -0.535 0.454
## PopulatinMA -0.532 0.452 0.510
## PopulatinMU -0.535 0.454 0.512 0.512
## PopulatinRE -0.505 0.426 0.484 0.482 0.484
## PopulatinUM -0.519 0.438 0.497 0.495 0.497 0.470
## PopulatinVA -0.526 0.449 0.504 0.504 0.505 0.475 0.488
## PopulatinYE -0.532 0.452 0.510 0.507 0.510 0.481 0.495 0.502
pdf(file="DevelopmentTime/p_DT_A_F_Zwaan.pdf",width=8, height=5)
p_DT_A_F_Zwaan <- ggplot(data = (subset(d_DT_A_F,Supervisor.PI=='Zwaan')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_F_Zwaan", x="Population", y = "DT_EggAdult")
p_DT_A_F_Zwaan + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_F_lmer_Zwaan <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_F[d_DT_A_F$Supervisor.PI == "Zwaan",])
capture.output(summary(DT_A_F_lmer_Zwaan),file = "DevelopmentTime/DT_A_F_lmer_Zwaan_sum.txt")
capture.output(anova(DT_A_F_lmer_Zwaan),file = "DevelopmentTime/DT_A_F_lmer_Zwaan.txt")
capture.output(emmeans(DT_A_F_lmer_Zwaan, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_F_lmer_Zwaan_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 7330' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 7330)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 7330' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 7330)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_F_lmer_Zwaan)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 1778.2 222.28 8 161.19 1.9922 0.05051 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_F_lmer_Zwaan)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_F[d_DT_A_F$Supervisor.PI == "Zwaan", ]
##
## REML criterion at convergence: 55980.7
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.4229 -0.5259 -0.1848 0.2790 6.6947
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 8.246 2.872
## Line:Population (Intercept) 25.504 5.050
## Batch (Intercept) 6.708 2.590
## Residual 111.578 10.563
## Number of obs: 7330, groups:
## ReplicateVial:Line, 521; Line:Population, 169; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 220.7481 2.2133 2.0039 99.735 9.9e-05 ***
## PopulationGI 4.1186 1.9094 158.6186 2.157 0.03251 *
## PopulationKA 2.5714 1.7615 157.0943 1.460 0.14634
## PopulationMA 3.4714 1.7605 157.1010 1.972 0.05038 .
## PopulationMU 1.3777 1.7767 161.8964 0.775 0.43921
## PopulationRE 5.5128 1.8672 156.8347 2.952 0.00364 **
## PopulationUM 1.6009 1.8048 155.7336 0.887 0.37641
## PopulationVA 4.2001 1.7671 159.0337 2.377 0.01865 *
## PopulationYE 0.5322 1.8015 167.9852 0.295 0.76803
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.365
## PopulatinKA -0.396 0.459
## PopulatinMA -0.396 0.460 0.498
## PopulatinMU -0.393 0.456 0.494 0.494
## PopulatinRE -0.374 0.436 0.470 0.471 0.466
## PopulatinUM -0.387 0.449 0.486 0.487 0.482 0.459
## PopulatinVA -0.395 0.458 0.496 0.497 0.492 0.469 0.485
## PopulatinYE -0.387 0.450 0.487 0.487 0.483 0.460 0.476 0.485
pdf(file="DevelopmentTime/p_DT_A_M_Zwaan.pdf",width=8, height=5)
p_DT_A_M_Zwaan <- ggplot(data = (subset(d_DT_A_M,Supervisor.PI=='Zwaan')), aes(x=Population_Lat, y=DT_EggAdult, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.01) +
labs(title="p_DT_A_M_Zwaan", x="Population", y = "DT_EggAdult")
p_DT_A_M_Zwaan + coord_cartesian(ylim = c(150, 400))+ droseu_theme
dev.off()
## pdf
## 3
DT_A_M_lmer_Zwaan <- lmer(DT_EggAdult ~ Population + (1|Line:Population) + (1|Batch) + (1|ReplicateVial : Line), data = d_DT_A_M[d_DT_A_M$Supervisor.PI == "Zwaan",])
capture.output(summary(DT_A_M_lmer_Zwaan),file = "DevelopmentTime/DT_A_M_lmer_Zwaan_sum.txt")
capture.output(anova(DT_A_M_lmer_Zwaan),file = "DevelopmentTime/DT_A_M_lmer_Zwaan.txt")
capture.output(emmeans(DT_A_M_lmer_Zwaan, list(pairwise ~ Population), adjust = "tukey"),file = "DevelopmentTime/DT_A_M_lmer_Zwaan_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 6394' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 6394)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 6394' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 6394)' or larger];
## but be warned that this may result in large computation time and memory use.
anova(DT_A_M_lmer_Zwaan)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 2206.9 275.87 8 160.63 2.2503 0.02641 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(DT_A_M_lmer_Zwaan)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: DT_EggAdult ~ Population + (1 | Line:Population) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: d_DT_A_M[d_DT_A_M$Supervisor.PI == "Zwaan", ]
##
## REML criterion at convergence: 49447.1
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.9922 -0.5259 -0.1942 0.2460 6.2037
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 7.491 2.737
## Line:Population (Intercept) 29.635 5.444
## Batch (Intercept) 8.828 2.971
## Residual 122.593 11.072
## Number of obs: 6394, groups:
## ReplicateVial:Line, 519; Line:Population, 169; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 225.7358 2.4877 1.8667 90.740 0.000204 ***
## PopulationGI 3.5977 2.0493 159.6267 1.756 0.081085 .
## PopulationKA 1.2331 1.8806 154.7829 0.656 0.512985
## PopulationMA 2.0196 1.8879 156.9895 1.070 0.286371
## PopulationMU -0.1906 1.8954 159.3747 -0.101 0.920023
## PopulationRE 4.1796 2.0077 158.3623 2.082 0.038968 *
## PopulationUM -0.6705 1.9316 154.5842 -0.347 0.728972
## PopulationVA 2.0535 1.8936 158.6298 1.084 0.279793
## PopulationYE -2.6216 1.9294 168.1729 -1.359 0.176034
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.348
## PopulatinKA -0.379 0.460
## PopulatinMA -0.378 0.459 0.500
## PopulatinMU -0.376 0.457 0.498 0.496
## PopulatinRE -0.355 0.434 0.470 0.469 0.467
## PopulatinUM -0.369 0.449 0.488 0.487 0.485 0.458
## PopulatinVA -0.377 0.457 0.498 0.496 0.494 0.467 0.485
## PopulatinYE -0.370 0.450 0.489 0.487 0.485 0.459 0.477 0.486
intersect_DT_A <- Reduce(intersect, list(d_DT_A$Line[d_DT_A$Supervisor.PI == "Gibert"],
d_DT_A$Line[d_DT_A$Supervisor.PI == "Grath"],
d_DT_A$Line[d_DT_A$Supervisor.PI == "Hoedjes"],
d_DT_A$Line[d_DT_A$Supervisor.PI == "Schmidt"],
d_DT_A$Line[d_DT_A$Supervisor.PI == "StamenkovicRadak"],
d_DT_A$Line[d_DT_A$Supervisor.PI == "Zwaan"]))
length(intersect_DT_A)
## [1] 22
write(intersect_DT_A, file ="DevelopmentTime/DT_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Colinet Lab : Sapho-Lou Marti , Hervé Colinet
Hoedjes Lab : Hristina Kostic, Katja Hoedjes
Onder Lab : Seda Coskun, Senel Selin Senkal, Dogus Can, Banu Sebnem Onder
Read data in R
d_DW <- read.csv("MasterSheets_Oct21_git/DW_MasterSheet_Oct21.csv")
str(d_DW)
## 'data.frame': 24161 obs. of 12 variables:
## $ Supervisor.PI: chr "Colinet" "Colinet" "Colinet" "Colinet" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DW_micrograms: num 0.394 0.473 0.581 0.594 0.454 0.486 0.581 0.584 0.596 0.573 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_DW$Supervisor.PI <- as.factor(d_DW$Supervisor.PI)
d_DW$Diet <- as.factor(d_DW$Diet)
d_DW$Batch <- as.factor(d_DW$Batch)
d_DW$Population <- as.factor(d_DW$Population)
d_DW$Population_Lat <- factor(d_DW$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_DW$Population_Lon <- factor(d_DW$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_DW$Population_Alt <- factor(d_DW$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_DW$Line <- as.factor(d_DW$Line)
d_DW$Sex <- as.factor(d_DW$Sex)
d_DW$DW_micrograms <- as.numeric(d_DW$DW_micrograms)
str(d_DW)
## 'data.frame': 24161 obs. of 15 variables:
## $ Supervisor.PI : Factor w/ 3 levels "Colinet","Hoedjes",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 5 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Line : Factor w/ 170 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ DW_micrograms : num 0.394 0.473 0.581 0.594 0.454 0.486 0.581 0.584 0.596 0.573 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat: Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon: Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt: Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_DW_F <-subset(d_DW,Sex=='F')
d_DW_M <-subset(d_DW,Sex=='M')
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
pdf(file="DryWeight/p_DW_F_all.pdf",width=8, height=5)
p_DW_F_all <- ggplot(data = d_DW_F, aes(x=Population_Lat, y=DW_micrograms, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_F_all", x="Population", y = "DW_micrograms")
p_DW_F_all + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="DryWeight/p_DW_M_all.pdf",width=8, height=5)
p_DW_M_all <- ggplot(data = d_DW_M, aes(x=Population_Lat, y=DW_micrograms, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_M_all", x="Population", y = "DW_micrograms")
p_DW_M_all + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
dw_min <- min(d_DW$DW_micrograms)
dw_max <- max(d_DW$DW_micrograms)
pdf(file="DryWeight/p_DW_F_Colinet.pdf",width=8, height=5)
p_DW_F_Colinet <- ggplot(data = (subset(d_DW_F,Supervisor.PI=='Colinet')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_F_Colinet", x="Population", y = "DW_micrograms")
p_DW_F_Colinet + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_F_lmer_Colinet <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_F[d_DW_F$Supervisor.PI == "Colinet",])
capture.output(summary(DW_F_lmer_Colinet),file = "DryWeight/DW_F_lmer_Colinet_sum.txt")
capture.output(anova(DW_F_lmer_Colinet),file = "DryWeight/DW_F_lmer_Colinet.txt")
capture.output(emmeans(DW_F_lmer_Colinet, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_F_lmer_Colinet_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3982' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3982)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3982' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3982)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="DryWeight/p_DW_M_Colinet.pdf",width=8, height=5)
p_DW_M_Colinet <- ggplot(data = (subset(d_DW_M,Supervisor.PI=='Colinet')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_M_Colinet", x="Population", y = "DW_micrograms")
p_DW_M_Colinet + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_M_lmer_Colinet <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_M[d_DW_M$Supervisor.PI == "Colinet",])
## boundary (singular) fit: see ?isSingular
capture.output(summary(DW_M_lmer_Colinet),file = "DryWeight/DW_M_lmer_Colinet_sum.txt")
capture.output(anova(DW_M_lmer_Colinet),file = "DryWeight/DW_M_lmer_Colinet.txt")
capture.output(emmeans(DW_M_lmer_Colinet, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_M_lmer_Colinet_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3975' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3975)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3975' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3975)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="DryWeight/p_DW_F_Hoedjes.pdf",width=8, height=5)
p_DW_F_Hoedjes <- ggplot(data = (subset(d_DW_F,Supervisor.PI=='Hoedjes')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_F_Hoedjes", x="Population", y = "DW_micrograms")
p_DW_F_Hoedjes + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_F_lmer_Hoedjes <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_F[d_DW_F$Supervisor.PI == "Hoedjes",])
capture.output(summary(DW_F_lmer_Hoedjes),file = "DryWeight/DW_F_lmer_Hoedjes_sum.txt")
capture.output(anova(DW_F_lmer_Hoedjes),file = "DryWeight/DW_F_lmer_Hoedjes.txt")
capture.output(emmeans(DW_F_lmer_Hoedjes, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_F_lmer_Hoedjes_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 4004' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 4004)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 4004' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 4004)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="DryWeight/p_DW_M_Hoedjes.pdf",width=8, height=5)
p_DW_M_Hoedjes <- ggplot(data = (subset(d_DW_M,Supervisor.PI=='Hoedjes')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_M_Hoedjes", x="Population", y = "DW_micrograms")
p_DW_M_Hoedjes + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_M_lmer_Hoedjes <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_M[d_DW_M$Supervisor.PI == "Hoedjes",])
capture.output(summary(DW_M_lmer_Hoedjes),file = "DryWeight/DW_M_lmer_Hoedjes_sum.txt")
capture.output(anova(DW_M_lmer_Hoedjes),file = "DryWeight/DW_M_lmer_Hoedjes.txt")
capture.output(emmeans(DW_M_lmer_Hoedjes, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_M_lmer_Hoedjes_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3997' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3997)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3997' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3997)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="DryWeight/p_DW_F_Onder.pdf",width=8, height=5)
p_DW_F_Onder <- ggplot(data = (subset(d_DW_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_F_Onder", x="Population", y = "DW_micrograms")
p_DW_F_Onder + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_F_lmer_Onder <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_F[d_DW_F$Supervisor.PI == "Onder",])
capture.output(summary(DW_F_lmer_Onder),file = "DryWeight/DW_F_lmer_Onder_sum.txt")
capture.output(anova(DW_F_lmer_Onder),file = "DryWeight/DW_F_lmer_Onder.txt")
capture.output(emmeans(DW_F_lmer_Onder, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_F_lmer_Onder_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 4102' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 4102)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 4102' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 4102)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="DryWeight/p_DW_M_Onder.pdf",width=8, height=5)
p_DW_M_Onder <- ggplot(data = (subset(d_DW_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=DW_micrograms, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_DW_M_Onder", x="Population", y = "DW_micrograms")
p_DW_M_Onder + coord_cartesian(ylim = c(0.1, 0.8))+ droseu_theme
dev.off()
## pdf
## 3
DW_M_lmer_Onder <- lmer(DW_micrograms ~ Population + (1|Population:Line) + (1|Batch), data = d_DW_M[d_DW_M$Supervisor.PI == "Onder",])
capture.output(summary(DW_M_lmer_Onder),file = "DryWeight/DW_M_lmer_Onder_sum.txt")
capture.output(anova(DW_M_lmer_Onder),file = "DryWeight/DW_M_lmer_Onder.txt")
capture.output(emmeans(DW_M_lmer_Onder, list(pairwise ~ Population), adjust = "tukey"),file = "DryWeight/DW_M_lmer_Onder_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 4101' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 4101)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 4101' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 4101)' or larger];
## but be warned that this may result in large computation time and memory use.
d_DW_popmeans <- d_DW %>% group_by(Supervisor.PI, Population, Sex) %>%
summarise_at(vars(DW_micrograms), list(Mean = mean))
write.csv(d_DW_popmeans,file = "DryWeight/d_DW_popmeans.csv", row.names = T )
d_DW_pop_ColHoe_F <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Colinet" & d_DW_popmeans$Sex == "F"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Hoedjes" & d_DW_popmeans$Sex == "F"])
d_DW_pop_ColOnd_F <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Colinet" & d_DW_popmeans$Sex == "F"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Onder" & d_DW_popmeans$Sex == "F"])
d_DW_pop_HoeOnd_F <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Hoedjes" & d_DW_popmeans$Sex == "F"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Onder" & d_DW_popmeans$Sex == "F"])
cor_DW_pop_F <- list(d_DW_pop_ColHoe_F = d_DW_pop_ColHoe_F,
d_DW_pop_ColOnd_F = d_DW_pop_ColOnd_F,
d_DW_pop_HoeOnd_F = d_DW_pop_HoeOnd_F)
write.csv(cor_DW_pop_F,file = "DryWeight/cor_DW_pop_F.csv", row.names = T)
###
d_DW_pop_ColHoe_M <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Colinet" & d_DW_popmeans$Sex == "M"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Hoedjes" & d_DW_popmeans$Sex == "M"])
d_DW_pop_ColOnd_M <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Colinet" & d_DW_popmeans$Sex == "M"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Onder" & d_DW_popmeans$Sex == "M"])
d_DW_pop_HoeOnd_M <- cor(d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Hoedjes" & d_DW_popmeans$Sex == "M"],
d_DW_popmeans$Mean[d_DW_popmeans$Supervisor.PI == "Onder" & d_DW_popmeans$Sex == "M"])
cor_DW_pop_M <- list(d_DW_pop_ColHoe_M = d_DW_pop_ColHoe_M,
d_DW_pop_ColOnd_M = d_DW_pop_ColOnd_M,
d_DW_pop_HoeOnd_M = d_DW_pop_HoeOnd_M)
write.csv(cor_DW_pop_M,file = "DryWeight/cor_DW_pop_M.csv", row.names = T)
intersect_DW <- Reduce(intersect, list(d_DW$Line[d_DW$Supervisor.PI == "Colinet"],
d_DW$Line[d_DW$Supervisor.PI == "Hoedjes"],
d_DW$Line[d_DW$Supervisor.PI == "Onder"]))
length(intersect_DW)
## [1] 161
write(intersect_DW, file ="DryWeight/DW_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Kozeretska Lab : Svitlana Serga, Alexandra Protsenko, Oleksandr Maistrenko, Iryna Kozeretska
Posnien Lab : Micael Reis, Lennart Hüper
Ritchie Lab : Megan Mcgunnigle, Nicola Cook, Teresa Abaurrea, Michael Ritchie
Schmidt Lab : Amy Goldfischer, Paul Schmidt
Read data in R
d_TL <- read.csv("MasterSheets_Oct21_git/TL_MasterSheet_Oct21.csv")
str(d_TL)
## 'data.frame': 13784 obs. of 14 variables:
## $ Supervisor.PI : chr "Schmidt" "Schmidt" "Schmidt" "Schmidt" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "VA" "VA" "VA" "VA" ...
## $ Line : chr "VA35" "VA35" "VA35" "VA35" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ TL_micrometers : num 993 964 1021 1025 1051 ...
## $ Country : chr "Russia" "Russia" "Russia" "Russia" ...
## $ Latitude : num 58 58 58 58 58 ...
## $ Longitude : num 33.2 33.2 33.2 33.2 33.2 ...
## $ Altitude : int 217 217 217 217 217 217 217 217 217 217 ...
str(d_TL)
## 'data.frame': 13784 obs. of 14 variables:
## $ Supervisor.PI : chr "Schmidt" "Schmidt" "Schmidt" "Schmidt" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "VA" "VA" "VA" "VA" ...
## $ Line : chr "VA35" "VA35" "VA35" "VA35" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" "Schmidt_1_VA35_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ TL_micrometers : num 993 964 1021 1025 1051 ...
## $ Country : chr "Russia" "Russia" "Russia" "Russia" ...
## $ Latitude : num 58 58 58 58 58 ...
## $ Longitude : num 33.2 33.2 33.2 33.2 33.2 ...
## $ Altitude : int 217 217 217 217 217 217 217 217 217 217 ...
d_TL$Supervisor.PI <- as.factor(d_TL$Supervisor.PI)
d_TL$Diet <- as.factor(d_TL$Diet)
d_TL$Batch <- as.factor(d_TL$Batch)
d_TL$Population_Lat <- factor(d_TL$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_TL$Population_Lon <- factor(d_TL$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_TL$Population_Alt <- factor(d_TL$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_TL$Line <- as.factor(d_TL$Line)
d_TL$Sex <- as.factor(d_TL$Sex)
d_TL$ReplicateVial <- as.factor(d_TL$ReplicateVial)
d_TL$TL_micrometers <- as.numeric(d_TL$TL_micrometers)
str(d_TL)
## 'data.frame': 13784 obs. of 17 variables:
## $ Supervisor.PI : Factor w/ 4 levels "Kozeretska","Posnien",..: 4 4 4 4 4 4 4 4 4 4 ...
## $ Diet : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 12 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "VA" "VA" "VA" "VA" ...
## $ Line : Factor w/ 166 levels "AK1","AK10","AK11",..: 135 135 135 135 135 135 135 135 135 135 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 503 levels "Kozeretska_1_AK1_1",..: 474 474 474 474 474 474 474 474 474 474 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ TL_micrometers : num 993 964 1021 1025 1051 ...
## $ Country : chr "Russia" "Russia" "Russia" "Russia" ...
## $ Latitude : num 58 58 58 58 58 ...
## $ Longitude : num 33.2 33.2 33.2 33.2 33.2 ...
## $ Altitude : int 217 217 217 217 217 217 217 217 217 217 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 8 8 8 8 8 8 8 8 8 8 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 6 6 6 6 6 6 6 6 6 6 ...
d_TL_F <-subset(d_TL,Sex=='F')
d_TL_M <-subset(d_TL,Sex=='M')
####
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
min(d_TL$TL_micrometers)
## [1] NA
max(d_TL$TL_micrometers)
## [1] NA
pdf(file="ThoraxLength/p_TL_F.pdf",width=8, height=5)
p_TL_F <- ggplot(data = d_TL_F, aes(x=Population_Lat, y=TL_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_F", x="Population", y = "TL_micrometers")
p_TL_F + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
##
pdf(file="ThoraxLength/p_TL_M.pdf",width=8, height=5)
p_TL_M <- ggplot(data = d_TL_M, aes(x=Population_Lat, y=TL_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_M", x="Population", y = "TL_micrometers")
p_TL_M + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
## Warning: Removed 1 rows containing non-finite values (stat_boxplot).
## Warning: Removed 1 rows containing missing values (geom_point).
dev.off()
## pdf
## 3
pdf(file="ThoraxLength/p_TL_F_Kozeretska.pdf",width=8, height=5)
p_TL_F_Kozeretska <- ggplot(data = (subset(d_TL_F,Supervisor.PI=='Kozeretska')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_F_Kozeretska", x="Population", y = "TL_micrometers")
p_TL_F_Kozeretska + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="ThoraxLength/p_TL_M_Kozeretska.pdf",width=8, height=5)
p_TL_M_Kozeretska <- ggplot(data = (subset(d_TL_M,Supervisor.PI=='Kozeretska')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_M_Kozeretska", x="Population", y = "TL_micrometers")
p_TL_M_Kozeretska + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
TL_F_lmer_Kozeretska <- lmer(TL_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_TL_F,Supervisor.PI=='Kozeretska')))
capture.output(summary(TL_F_lmer_Kozeretska),file = "ThoraxLength/TL_F_Kozeretska_sum.txt")
capture.output(anova(TL_F_lmer_Kozeretska),file = "ThoraxLength/TL_F_lmer_Kozeretska.txt")
capture.output(emmeans(TL_F_lmer_Kozeretska, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_F_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 4810' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 4810)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 4810' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 4810)' or larger];
## but be warned that this may result in large computation time and memory use.
TL_M_lmer_Kozeretska <- lmer(TL_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_TL_M,Supervisor.PI=='Kozeretska')))
capture.output(summary(TL_M_lmer_Kozeretska),file = "ThoraxLength/TL_M_Kozeretska_sum.txt")
capture.output(anova(TL_M_lmer_Kozeretska),file = "ThoraxLength/TL_M_lmer_Kozeretska.txt")
capture.output(emmeans(TL_M_lmer_Kozeretska, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_M_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 4807' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 4807)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 4807' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 4807)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="ThoraxLength/p_TL_F_Posnien.pdf",width=8, height=5)
p_TL_F_Posnien <- ggplot(data = (subset(d_TL_F,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_F_Posnien", x="Population", y = "TL_micrometers")
p_TL_F_Posnien + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="ThoraxLength/p_TL_M_Posnien.pdf",width=8, height=5)
p_TL_M_Posnien <- ggplot(data = (subset(d_TL_M,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_M_Posnien", x="Population", y = "TL_micrometers")
p_TL_M_Posnien + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
TL_F_lmer_Posnien <- lmer(TL_micrometers ~ Population + (1|Line:Population)+
(1|ReplicateVial : Line : Population), data = (subset(d_TL_F,Supervisor.PI=='Posnien')))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : Model is nearly unidentifiable: large eigenvalue ratio
## - Rescale variables?
capture.output(summary(TL_F_lmer_Posnien),file = "ThoraxLength/TL_F_Posnien_sum.txt")
capture.output(anova(TL_F_lmer_Posnien),file = "ThoraxLength/TL_F_lmer_Posnien.txt")
capture.output(emmeans(TL_F_lmer_Posnien, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_F_lmer_Posnientk.txt")
head(d_TL_M)
## Supervisor.PI Diet Batch Population Line Sex ReplicateVialOld
## 1785 Posnien S 1 AK AK3 M 1
## 1786 Posnien S 1 AK AK3 M 1
## 1787 Posnien S 1 AK AK3 M 1
## 1788 Posnien S 1 AK AK3 M 1
## 1789 Posnien S 1 AK AK3 M 1
## 1790 Posnien S 1 AK AK3 M 1
## ReplicateVial Individual TL_micrometers Country Latitude Longitude
## 1785 Posnien_1_AK3_1 1 793.417 Finland 61.1 23.52
## 1786 Posnien_1_AK3_1 2 791.090 Finland 61.1 23.52
## 1787 Posnien_1_AK3_1 3 761.400 Finland 61.1 23.52
## 1788 Posnien_1_AK3_1 4 829.974 Finland 61.1 23.52
## 1789 Posnien_1_AK3_1 5 820.958 Finland 61.1 23.52
## 1790 Posnien_1_AK3_1 6 798.379 Finland 61.1 23.52
## Altitude Population_Lat Population_Lon Population_Alt
## 1785 88 AK AK AK
## 1786 88 AK AK AK
## 1787 88 AK AK AK
## 1788 88 AK AK AK
## 1789 88 AK AK AK
## 1790 88 AK AK AK
TL_M_lmer_Posnien <- lmer(TL_micrometers ~ Population + (1|Line:Population), data = (subset(d_TL_M,Supervisor.PI=='Posnien')))
capture.output(summary(TL_M_lmer_Posnien),file = "ThoraxLength/TL_M_Posnien_sum.txt")
capture.output(anova(TL_M_lmer_Posnien),file = "ThoraxLength/TL_M_lmer_Posnien.txt")
capture.output(emmeans(TL_M_lmer_Posnien, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_M_lmer_Posnien_tk.txt")
pdf(file="ThoraxLength/p_TL_F_Ritchie.pdf",width=8, height=5)
p_TL_F_Ritchie <- ggplot(data = (subset(d_TL_F,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_F_Ritchie", x="Population", y = "TL_micrometers")
p_TL_F_Ritchie + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="ThoraxLength/p_TL_M_Ritchie.pdf",width=8, height=5)
p_TL_M_Ritchie <- ggplot(data = (subset(d_TL_M,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_M_Ritchie", x="Population", y = "TL_micrometers")
p_TL_M_Ritchie + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
## Warning: Removed 1 rows containing non-finite values (stat_boxplot).
## Warning: Removed 1 rows containing missing values (geom_point).
dev.off()
## pdf
## 3
TL_F_lmer_Ritchie <- lmer(TL_micrometers ~ Population + (1|Line:Population) +
(1|Batch), data = (subset(d_TL_F,Supervisor.PI=='Ritchie')))
## boundary (singular) fit: see ?isSingular
## Warning: Model failed to converge with 1 negative eigenvalue: -4.8e+01
capture.output(summary(TL_F_lmer_Ritchie),file = "ThoraxLength/TL_F_Ritchie_sum.txt")
capture.output(anova(TL_F_lmer_Ritchie),file = "ThoraxLength/TL_F_lmer_Ritchie.txt")
capture.output(emmeans(TL_F_lmer_Ritchie, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_F_lmer_Ritchie_tk.txt")
TL_M_lmer_Ritchie <- lmer(TL_micrometers ~ Population + (1|Line:Population) +
(1|Batch), data = (subset(d_TL_M,Supervisor.PI=='Ritchie')))
capture.output(summary(TL_M_lmer_Ritchie),file = "ThoraxLength/TL_M_Ritchie_sum.txt")
capture.output(anova(TL_M_lmer_Ritchie),file = "ThoraxLength/TL_M_lmer_Ritchie.txt")
capture.output(emmeans(TL_M_lmer_Ritchie, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_M_lmer_Ritchie_tk.txt")
pdf(file="ThoraxLength/p_TL_F_Schmidt.pdf",width=8, height=5)
p_TL_F_Schmidt <- ggplot(data = (subset(d_TL_F,Supervisor.PI=='Schmidt')), aes(x=Population_Lat, y=TL_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_TL_F_Schmidt", x="Population", y = "TL_micrometers")
p_TL_F_Schmidt + coord_cartesian(ylim = c(500, 1400))+ droseu_theme
dev.off()
## pdf
## 3
TL_F_lmer_Schmidt <- lmer(TL_micrometers ~ Population + (1|Line:Population), data = (subset(d_TL_F,Supervisor.PI=='Schmidt')))
capture.output(summary(TL_F_lmer_Schmidt),file = "ThoraxLength/TL_F_Schmidt_sum.txt")
capture.output(anova(TL_F_lmer_Schmidt),file = "ThoraxLength/TL_F_lmer_Schmidt.txt")
capture.output(emmeans(TL_F_lmer_Schmidt, list(pairwise ~ Population), adjust = "tukey"),file = "ThoraxLength/TL_F_lmer_Schmidt_tk.txt")
intersect_TL <- Reduce(intersect, list(d_TL$Line[d_TL$Supervisor.PI == "Kozeretska"],
d_TL$Line[d_TL$Supervisor.PI == "Posnien"],
d_TL$Line[d_TL$Supervisor.PI == "Ritchie"],
d_TL$Line[d_TL$Supervisor.PI == "Schmidt"]))
length(intersect_TL)
## [1] 4
write(intersect_TL, file ="ThoraxLength/intersect_TL.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Onder Lab : Cansu Aksoy, Ekin Demir, Ezgi Cobanoglu, Banu Sebnem Onder
Posnien Lab : Micael Reis, Lennart Hüper, Nico Posnien
Ritchie Lab : Megan Mcgunnigle, Nicola Cook, Teresa Abaurrea, Marija Tanaskovic, Michael Ritchie
Stamenkovic-Radak Lab : Marija Savic Veselinovic, Marija Tanaskovic, Aleksandra Patenkovic, Filip Filopovski, Mihailo Jelic, Katarina Eric, Pavle Eric, Slobodan Davidovic, Marina Stamenkovic-Radak
d_WA <- read.csv("MasterSheets_Oct21_git/WA_MasterSheet_Nov21.csv")
str(d_WA)
## 'data.frame': 21201 obs. of 15 variables:
## $ Supervisor.PI : chr "StamenkovicRadak" "StamenkovicRadak" "StamenkovicRadak" "StamenkovicRadak" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "YE" "YE" "YE" "YE" ...
## $ Line : chr "YE13" "YE13" "YE13" "YE13" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "StamenkovicRadak_1_YE13_1" "StamenkovicRadak_1_YE13_1" "StamenkovicRadak_1_YE13_1" "StamenkovicRadak_1_YE13_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ CentroidSizeLeft_micrometers : num 2869 2910 2901 3050 2906 ...
## $ CentroidSizeRight_micrometers: num 2891 2889 2881 3039 2919 ...
## $ Country : chr "Turkey" "Turkey" "Turkey" "Turkey" ...
## $ Latitude : num 40.2 40.2 40.2 40.2 40.2 ...
## $ Longitude : num 32.3 32.3 32.3 32.3 32.3 ...
## $ Altitude : int 680 680 680 680 680 680 680 680 680 680 ...
d_WA$Supervisor.PI <- as.factor(d_WA$Supervisor.PI)
d_WA$Diet <- as.factor(d_WA$Diet)
d_WA$Batch <- as.factor(d_WA$Batch)
d_WA$Population_Lat <- factor(d_WA$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_WA$Population_Lon <- factor(d_WA$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_WA$Population_Alt <- factor(d_WA$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_WA$Line <- as.factor(d_WA$Line)
d_WA$Sex <- as.factor(d_WA$Sex)
d_WA$ReplicateVial <- as.factor(d_WA$ReplicateVial)
d_WA$CentroidSizeLeft_micrometers <- as.numeric(d_WA$CentroidSizeLeft_micrometers)
d_WA$CentroidSizeRight_micrometers <- as.numeric(d_WA$CentroidSizeRight_micrometers)
str(d_WA)
## 'data.frame': 21201 obs. of 18 variables:
## $ Supervisor.PI : Factor w/ 4 levels "Onder","Posnien",..: 4 4 4 4 4 4 4 4 4 4 ...
## $ Diet : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 15 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "YE" "YE" "YE" "YE" ...
## $ Line : Factor w/ 172 levels "AK1","AK10","AK11",..: 154 154 154 154 154 154 154 154 154 154 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVialOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 806 levels "Onder_1_AK1_1",..: 711 711 711 711 711 711 711 711 711 711 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ CentroidSizeLeft_micrometers : num 2869 2910 2901 3050 2906 ...
## $ CentroidSizeRight_micrometers: num 2891 2889 2881 3039 2919 ...
## $ Country : chr "Turkey" "Turkey" "Turkey" "Turkey" ...
## $ Latitude : num 40.2 40.2 40.2 40.2 40.2 ...
## $ Longitude : num 32.3 32.3 32.3 32.3 32.3 ...
## $ Altitude : int 680 680 680 680 680 680 680 680 680 680 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 8 8 8 8 8 8 8 8 8 8 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
d_WA_F <-subset(d_WA,Sex=='F')
d_WA_M <-subset(d_WA,Sex=='M')
min(d_WA$CentroidSizeLeft_micrometers)
## [1] 1857.612
max(d_WA$CentroidSizeLeft_micrometers)
## [1] 3333.05
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
min_WAL <- min(d_WA$CentroidSizeLeft_micrometers)
max_WAL <- max(d_WA$CentroidSizeLeft_micrometers)
min_WAR <- min(d_WA$CentroidSizeRight_micrometers)
max_WAR <- max(d_WA$CentroidSizeRight_micrometers)
pdf(file="WingArea/p_WA_F_R.pdf",width=8, height=5)
p_WA_F_R <- ggplot(data = d_WA_F, aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_F_L.pdf",width=8, height=5)
p_WA_F_L <- ggplot(data = d_WA_F, aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
##
pdf(file="WingArea/p_WA_M_R.pdf",width=8, height=5)
p_WA_M_R <- ggplot(data = d_WA_M, aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_M_L.pdf",width=8, height=5)
p_WA_M_L <- ggplot(data = d_WA_M, aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_Onder_L.pdf",width=8, height=5)
p_WA_F_L_Onder <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Onder_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Onder + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_Onder_L.pdf",width=8, height=5)
p_WA_M_L_Onder <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Onder_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Onder + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Onder_L.pdf",width=8, height=5)
p_WA_F_L_Onder <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Onder_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Onder + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_M_pop_Onder_L.pdf",width=8, height=5)
p_WA_M_L_Onder <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Onder_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Onder + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_L_Onder_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Onder')))
capture.output(summary(WA_F_L_Onder_lmer),file = "WingArea/WA_F_L_Onder_sum.txt")
capture.output(anova(WA_F_L_Onder_lmer),file = "WingArea/WA_F_L_Onder_lmer.txt")
capture.output(emmeans(WA_F_L_Onder_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_L_Onder_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 5247' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 5247)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 5247' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 5247)' or larger];
## but be warned that this may result in large computation time and memory use.
WA_M_L_Onder_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Onder')))
capture.output(summary(WA_M_L_Onder_lmer),file = "WingArea/WA_M_L_Onder_sum.txt")
capture.output(anova(WA_M_L_Onder_lmer),file = "WingArea/WA_M_L_Onder_lmer.txt")
capture.output(emmeans(WA_M_L_Onder_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_L_Onder_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 5230' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 5230)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 5230' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 5230)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="WingArea/p_WA_F_Posnien_L.pdf",width=8, height=5)
p_WA_F_L_Posnien <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Posnien_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Posnien + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_Posnien_L.pdf",width=8, height=5)
p_WA_M_L_Posnien <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Posnien_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Posnien + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Posnien_L.pdf",width=8, height=5)
p_WA_F_L_Posnien <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Posnien_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Posnien + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_Posnien_L.pdf",width=8, height=5)
p_WA_M_L_Posnien <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Posnien_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Posnien + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_L_Posnien_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Posnien')))
capture.output(summary(WA_F_L_Posnien_lmer),file = "WingArea/WA_F_L_Posnien_sum.txt")
capture.output(anova(WA_F_L_Posnien_lmer),file = "WingArea/WA_F_L_Posnien_lmer.txt")
capture.output(emmeans(WA_F_L_Posnien_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_L_Posnien_lmer_tk.txt")
WA_M_L_Posnien_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Posnien')))
capture.output(summary(WA_M_L_Posnien_lmer),file = "WingArea/WA_M_L_Posnien_sum.txt")
capture.output(anova(WA_M_L_Posnien_lmer),file = "WingArea/WA_M_L_Posnien_lmer.txt")
capture.output(emmeans(WA_M_L_Posnien_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_L_Posnien_lmer_tk.txt")
pdf(file="WingArea/p_WA_F_Ritchie_L.pdf",width=8, height=5)
p_WA_F_L_Ritchie <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Ritchie_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Ritchie + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_M_Ritchie_L.pdf",width=8, height=5)
p_WA_M_L_Ritchie <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Ritchie_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Ritchie + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Ritchie_L.pdf",width=8, height=5)
p_WA_F_L_Ritchie <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Ritchie_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_Ritchie + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_Ritchie_L.pdf",width=8, height=5)
p_WA_M_L_Ritchie <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Ritchie_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_Ritchie + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_L_Ritchie_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Ritchie')))
capture.output(summary(WA_F_L_Ritchie_lmer),file = "WingArea/WA_F_L_Ritchie_sum.txt")
capture.output(anova(WA_F_L_Ritchie_lmer),file = "WingArea/WA_F_L_Ritchie_lmer.txt")
capture.output(emmeans(WA_F_L_Ritchie_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_L_Ritchie_lmer_tk.txt")
WA_M_L_Ritchie_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Ritchie')))
capture.output(summary(WA_M_L_Ritchie_lmer),file = "WingArea/WA_M_L_Ritchie_sum.txt")
capture.output(anova(WA_M_L_Ritchie_lmer),file = "WingArea/WA_M_L_Ritchie_lmer.txt")
capture.output(emmeans(WA_M_L_Ritchie_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_L_Ritchie_lmer_tk.txt")
pdf(file="WingArea/p_WA_F_StamenkovicRadak_L.pdf",width=8, height=5)
p_WA_F_L_StamenkovicRadak <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_StamenkovicRadak_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_StamenkovicRadak + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_M_StamenkovicRadak_L.pdf",width=8, height=5)
p_WA_M_L_StamenkovicRadak <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_StamenkovicRadak_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_StamenkovicRadak + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_StamenkovicRadak_L.pdf",width=8, height=5)
p_WA_F_L_StamenkovicRadak <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_StamenkovicRadak_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_F_L_StamenkovicRadak + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="WingArea/p_WA_M_pop_StamenkovicRadak_L.pdf",width=8, height=5)
p_WA_M_L_StamenkovicRadak <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeLeft_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_StamenkovicRadak_L", x="Population", y = "CentroidSizeLeft_micrometers")
p_WA_M_L_StamenkovicRadak + coord_cartesian(ylim = c(min_WAL, max_WAL))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_L_StamenkovicRadak_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')))
## boundary (singular) fit: see ?isSingular
## Warning: Model failed to converge with 1 negative eigenvalue: -7.1e-03
capture.output(summary(WA_F_L_StamenkovicRadak_lmer),file = "WingArea/WA_F_L_StamenkovicRadak_sum.txt")
capture.output(anova(WA_F_L_StamenkovicRadak_lmer),file = "WingArea/WA_F_L_StamenkovicRadak_lmer.txt")
capture.output(emmeans(WA_F_L_StamenkovicRadak_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_L_StamenkovicRadak_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3787' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3787)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3787' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3787)' or larger];
## but be warned that this may result in large computation time and memory use.
WA_M_L_StamenkovicRadak_lmer <- lmer(CentroidSizeLeft_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, : Model is nearly unidentifiable: large eigenvalue ratio
## - Rescale variables?
## Warning: Model failed to converge with 1 negative eigenvalue: -4.0e-03
capture.output(summary(WA_M_L_StamenkovicRadak_lmer),file = "WingArea/WA_M_L_StamenkovicRadak_sum.txt")
capture.output(anova(WA_M_L_StamenkovicRadak_lmer),file = "WingArea/WA_M_L_StamenkovicRadak_lmer.txt")
capture.output(emmeans(WA_M_L_StamenkovicRadak_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_L_StamenkovicRadak_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3662' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3662)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3662' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3662)' or larger];
## but be warned that this may result in large computation time and memory use.
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
min_WAR <- min(d_WA$CentroidSizeRight_micrometers)
max_WAR <- max(d_WA$CentroidSizeRight_micrometers)
for (i in dev.list()[1]:dev.list()[length(dev.list())]) {
dev.off()
}
# crashed bc tries to save lots -- need to remove some
pdf(file="WingArea/p_WA_F_Onder_R.pdf",width=8, height=5)
p_WA_F_R_Onder <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Onder_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Onder + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_Onder_R.pdf",width=8, height=5)
p_WA_M_R_Onder <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Onder_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Onder + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Onder_R.pdf",width=8, height=5)
p_WA_F_R_Onder <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_pop_Onder_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Onder + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_Onder_R.pdf",width=8, height=5)
p_WA_M_R_Onder <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_pop_Onder_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Onder + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_R_Onder_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Onder')))
capture.output(summary(WA_F_R_Onder_lmer),file = "WingArea/WA_F_R_Onder_sum.txt")
capture.output(anova(WA_F_R_Onder_lmer),file = "WingArea/WA_F_R_Onder_lmer.txt")
capture.output(emmeans(WA_F_R_Onder_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_R_Onder_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 5247' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 5247)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 5247' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 5247)' or larger];
## but be warned that this may result in large computation time and memory use.
WA_M_R_Onder_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Onder')))
capture.output(summary(WA_M_R_Onder_lmer),file = "WingArea/WA_M_R_Onder_sum.txt")
capture.output(anova(WA_M_R_Onder_lmer),file = "WingArea/WA_M_R_Onder_lmer.txt")
capture.output(emmeans(WA_M_R_Onder_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_R_Onder_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 5230' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 5230)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 5230' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 5230)' or larger];
## but be warned that this may result in large computation time and memory use.
pdf(file="WingArea/p_WA_F_Posnien_R.pdf",width=8, height=5)
p_WA_F_R_Posnien <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Posnien_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Posnien + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_Posnien_R.pdf",width=8, height=5)
p_WA_M_R_Posnien <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Posnien_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Posnien + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Posnien_R.pdf",width=8, height=5)
p_WA_F_R_Posnien <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_pop_Posnien_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Posnien + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_Posnien_R.pdf",width=8, height=5)
p_WA_M_R_Posnien <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Posnien')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_pop_Posnien_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Posnien + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_R_Posnien_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Posnien')))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## unable to evaluate scaled gradient
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge: degenerate Hessian with 1 negative eigenvalues
## Warning: Model failed to converge with 1 negative eigenvalue: -1.1e-04
capture.output(summary(WA_F_R_Posnien_lmer),file = "WingArea/WA_F_R_Posnien_sum.txt")
capture.output(anova(WA_F_R_Posnien_lmer),file = "WingArea/WA_F_R_Posnien_lmer.txt")
capture.output(emmeans(WA_F_R_Posnien_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_R_Posnien_lmer_tk.txt")
WA_M_R_Posnien_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Posnien')))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## unable to evaluate scaled gradient
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge: degenerate Hessian with 1 negative eigenvalues
capture.output(summary(WA_M_R_Posnien_lmer),file = "WingArea/WA_M_R_Posnien_sum.txt")
capture.output(anova(WA_M_R_Posnien_lmer),file = "WingArea/WA_M_R_Posnien_lmer.txt")
capture.output(emmeans(WA_M_R_Posnien_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_R_Posnien_lmer_tk.txt")
pdf(file="WingArea/p_WA_F_Ritchie_R.pdf",width=8, height=5)
p_WA_F_R_Ritchie <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_Ritchie_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Ritchie + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_Ritchie_R.pdf",width=8, height=5)
p_WA_M_R_Ritchie <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_Ritchie_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Ritchie + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_Ritchie_R.pdf",width=8, height=5)
p_WA_F_R_Ritchie <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_pop_Ritchie_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_Ritchie + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_Ritchie_R.pdf",width=8, height=5)
p_WA_M_R_Ritchie <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='Ritchie')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_pop_Ritchie_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_Ritchie + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_R_Ritchie_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='Ritchie')))
capture.output(summary(WA_F_R_Ritchie_lmer),file = "WingArea/WA_F_R_Ritchie_sum.txt")
capture.output(anova(WA_F_R_Ritchie_lmer),file = "WingArea/WA_F_R_Ritchie_lmer.txt")
capture.output(emmeans(WA_F_R_Ritchie_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_R_Ritchie_lmer_tk.txt")
WA_M_R_Ritchie_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='Ritchie')))
capture.output(summary(WA_M_R_Ritchie_lmer),file = "WingArea/WA_M_R_Ritchie_sum.txt")
capture.output(anova(WA_M_R_Ritchie_lmer),file = "WingArea/WA_M_R_Ritchie_lmer.txt")
capture.output(emmeans(WA_M_R_Ritchie_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_M_R_Ritchie_lmer_tk.txt")
pdf(file="WingArea/p_WA_F_StamenkovicRadak_R.pdf",width=8, height=5)
p_WA_F_R_StamenkovicRadak <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_StamenkovicRadak_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_StamenkovicRadak + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_StamenkovicRadak_R.pdf",width=8, height=5)
p_WA_M_R_StamenkovicRadak <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_StamenkovicRadak_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_StamenkovicRadak + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_F_pop_StamenkovicRadak_R.pdf",width=8, height=5)
p_WA_F_R_StamenkovicRadak <- ggplot(data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_F_pop_StamenkovicRadak_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_F_R_StamenkovicRadak + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="WingArea/p_WA_M_pop_StamenkovicRadak_R.pdf",width=8, height=5)
p_WA_M_R_StamenkovicRadak <- ggplot(data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')), aes(x=Population_Lat, y=CentroidSizeRight_micrometers, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_WA_M_pop_StamenkovicRadak_R", x="Population", y = "CentroidSizeRight_micrometers")
p_WA_M_R_StamenkovicRadak + coord_cartesian(ylim = c(min_WAR, max_WAR))+ droseu_theme
dev.off()
## pdf
## 3
WA_F_R_StamenkovicRadak_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_F,Supervisor.PI=='StamenkovicRadak')))
## boundary (singular) fit: see ?isSingular
capture.output(summary(WA_F_R_StamenkovicRadak_lmer),file = "WingArea/WA_F_R_StamenkovicRadak_sum.txt")
capture.output(anova(WA_F_R_StamenkovicRadak_lmer),file = "WingArea/WA_F_R_StamenkovicRadak_lmer.txt")
capture.output(emmeans(WA_F_R_StamenkovicRadak_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_R_StamenkovicRadak_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3787' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3787)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3787' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3787)' or larger];
## but be warned that this may result in large computation time and memory use.
WA_M_R_StamenkovicRadak_lmer <- lmer(CentroidSizeRight_micrometers ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_WA_M,Supervisor.PI=='StamenkovicRadak')))
## boundary (singular) fit: see ?isSingular
## Warning: Model failed to converge with 1 negative eigenvalue: -3.1e+02
capture.output(summary(WA_M_R_StamenkovicRadak_lmer),file = "WingArea/WA_M_R_StamenkovicRadak_sum.txt")
capture.output(anova(WA_M_R_StamenkovicRadak_lmer),file = "WingArea/WA_M_R_StamenkovicRadak_lmer.txt")
capture.output(emmeans(WA_M_R_StamenkovicRadak_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "WingArea/WA_F_R_StamenkovicRadak_lmer_tk.txt")
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'pbkrtest.limit = 3662' (or larger)
## [or, globally, 'set emm_options(pbkrtest.limit = 3662)' or larger];
## but be warned that this may result in large computation time and memory use.
## Note: D.f. calculations have been disabled because the number of observations exceeds 3000.
## To enable adjustments, add the argument 'lmerTest.limit = 3662' (or larger)
## [or, globally, 'set emm_options(lmerTest.limit = 3662)' or larger];
## but be warned that this may result in large computation time and memory use.
intersect_WA_F <- Reduce(intersect, list(d_WA_F$Line[d_WA_F$Supervisor.PI == "Onder"],
d_WA_F$Line[d_WA_F$Supervisor.PI == "Posnien"],
d_WA_F$Line[d_WA_F$Supervisor.PI == "Ritchie"],
d_WA_F$Line[d_WA_F$Supervisor.PI == "StamenkovicRadak"]))
length(intersect_WA_F)
## [1] 5
write(intersect_WA_F, file ="WingArea/WA_F_int.txt", sep = "\t")
intersect_WA_M <- Reduce(intersect, list(d_WA_M$Line[d_WA_M$Supervisor.PI == "Onder"],
d_WA_M$Line[d_WA_M$Supervisor.PI == "Posnien"],
d_WA_M$Line[d_WA_M$Supervisor.PI == "Ritchie"],
d_WA_M$Line[d_WA_M$Supervisor.PI == "StamenkovicRadak"]))
length(intersect_WA_M)
## [1] 5
write(intersect_WA_M, file ="WingArea/WA_M_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
#Note that the trait has been phenotyped only in females.
Contributors:
Billeter Lab : Xiaocui Wang, Tiphaine Bailly, Mario Mira, Jean-Christophe Billeter
Fricke Lab : Claudia Fricke
Reading data in R
d_Fec <- read.csv("MasterSheets_Oct21_git/FEC_MasterSheet_Oct21.csv")
str(d_Fec)
## 'data.frame': 1725 obs. of 13 variables:
## $ Supervisor.PI : chr "Billeter" "Billeter" "Billeter" "Billeter" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Individual : int 1 2 3 4 5 1 2 3 4 5 ...
## $ NumberOfAdultsEclosed: int 206 75 54 58 278 162 0 101 145 188 ...
## $ Notes : chr NA NA NA NA ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
Factors need reformatting (i.e. Supervisor.PI should be coded as a factor, not character).
str(d_Fec)
## 'data.frame': 1725 obs. of 13 variables:
## $ Supervisor.PI : chr "Billeter" "Billeter" "Billeter" "Billeter" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Individual : int 1 2 3 4 5 1 2 3 4 5 ...
## $ NumberOfAdultsEclosed: int 206 75 54 58 278 162 0 101 145 188 ...
## $ Notes : chr NA NA NA NA ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_Fec$Supervisor.PI <- as.factor(d_Fec$Supervisor.PI)
d_Fec$Diet <- as.factor(d_Fec$Diet)
d_Fec$Batch <- as.factor(d_Fec$Batch)
d_Fec$Population <- as.factor(d_Fec$Population)
d_Fec$Population_Lat <- factor(d_Fec$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Fec$Population_Lon <- factor(d_Fec$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Fec$Population_Alt <- factor(d_Fec$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Fec$Line <- as.factor(d_Fec$Line)
d_Fec$NumberOfAdultsEclosed <- as.numeric(d_Fec$NumberOfAdultsEclosed)
d_Fec$Censor <- as.factor(d_Fec$Censor)
str(d_Fec)
## 'data.frame': 1725 obs. of 16 variables:
## $ Supervisor.PI : Factor w/ 2 levels "Billeter","Fricke": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 8 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Line : Factor w/ 169 levels "AK1","AK10","AK11",..: 1 1 1 1 1 11 11 11 11 11 ...
## $ Individual : int 1 2 3 4 5 1 2 3 4 5 ...
## $ NumberOfAdultsEclosed: num 206 75 54 58 278 162 0 101 145 188 ...
## $ Notes : chr NA NA NA NA ...
## $ Censor : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_Fec <- subset(d_Fec, Censor == "0")
Now they should be in the correct format, see below.
str(d_Fec)
## 'data.frame': 1721 obs. of 16 variables:
## $ Supervisor.PI : Factor w/ 2 levels "Billeter","Fricke": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 2 levels "NS","S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 8 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Line : Factor w/ 169 levels "AK1","AK10","AK11",..: 1 1 1 1 1 11 11 11 11 11 ...
## $ Individual : int 1 2 3 4 5 1 2 3 4 5 ...
## $ NumberOfAdultsEclosed: num 206 75 54 58 278 162 0 101 145 188 ...
## $ Notes : chr NA NA NA NA ...
## $ Censor : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
Descriptive statistics at the line level, with batch information :
Descriptive statistics for fecundity at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
min_Fec <- min(d_Fec$NumberOfAdultsEclosed)
max_Fec <- max(d_Fec$NumberOfAdultsEclosed)
y-axis is scaled by the minimum (0) and maximum (306) values in the full data set.
Here is an example code for fecundity, Billeter Lab. The same code is used to generate plots for other contributing labs by filtering the data at supervisor level (for females and males, if applicable).
pdf(file="Fecundity/p_Fec_Billeter.pdf",width=8, height=5)
p_Fec_Billeter <- ggplot(data = (subset(d_Fec,Supervisor.PI=='Billeter')), aes(x=Population_Lat, y=NumberOfAdultsEclosed, fill=Batch)) + geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Fec_Billeter", x="Population", y = "NumberOfAdultsEclosed")
p_Fec_Billeter + coord_cartesian(ylim = c(min_Fec, max_Fec))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="Fecundity/p_Fec_pop_Billeter.pdf",width=8, height=5)
p_Fec_pop_Billeter <- ggplot(data = (subset(d_Fec,Supervisor.PI=='Billeter')), aes(x=Population_Lat, y=NumberOfAdultsEclosed, fill=Population_Lat)) + geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) + labs(title="p_Fec_pop_Billeter", x="Population", y = "NumberOfAdultsEclosed")
p_Fec_pop_Billeter + coord_cartesian(ylim = c(min_Fec, max_Fec))+ droseu_theme
dev.off()
## pdf
## 3
Fec_lmer_Billeter <- lmer(NumberOfAdultsEclosed ~ Population + (1|Population:Line), data = d_Fec[d_Fec$Supervisor.PI == "Billeter",])
capture.output(anova(Fec_lmer_Billeter),file = "Fecundity/Fec_lmer_Billeter.txt")
capture.output(summary(Fec_lmer_Billeter),file = "Fecundity/Fec_lmer_Billeter_sum.txt")
capture.output(emmeans(Fec_lmer_Billeter, list(pairwise ~ Population), adjust = "tukey"),file = "Fecundity/Fec_lmer_Billeter_tukey.txt")
anova(Fec_lmer_Billeter)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 61874 7734.2 8 148.39 2.7992 0.006461 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(Fec_lmer_Billeter)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: NumberOfAdultsEclosed ~ Population + (1 | Population:Line)
## Data: d_Fec[d_Fec$Supervisor.PI == "Billeter", ]
##
## REML criterion at convergence: 8773.2
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.02323 -0.55643 -0.03579 0.53645 2.97008
##
## Random effects:
## Groups Name Variance Std.Dev.
## Population:Line (Intercept) 1113 33.36
## Residual 2763 52.56
## Number of obs: 805, groups: Population:Line, 160
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 97.067 9.154 149.480 10.603 <2e-16 ***
## PopulationGI -22.874 13.904 146.434 -1.645 0.1021
## PopulationKA 12.903 12.928 148.886 0.998 0.3198
## PopulationMA 2.053 13.460 147.925 0.152 0.8790
## PopulationMU -3.225 13.226 152.369 -0.244 0.8077
## PopulationRE -29.213 14.231 148.404 -2.053 0.0419 *
## PopulationUM 5.760 13.959 148.978 0.413 0.6805
## PopulationVA -10.734 12.894 147.238 -0.832 0.4065
## PopulationYE -33.130 12.963 150.368 -2.556 0.0116 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.658
## PopulatinKA -0.708 0.466
## PopulatinMA -0.680 0.448 0.482
## PopulatinMU -0.692 0.456 0.490 0.471
## PopulatinRE -0.643 0.424 0.455 0.437 0.445
## PopulatinUM -0.656 0.432 0.464 0.446 0.454 0.422
## PopulatinVA -0.710 0.467 0.503 0.483 0.491 0.457 0.466
## PopulatinYE -0.706 0.465 0.500 0.480 0.489 0.454 0.463 0.501
## pdf
## 3
## pdf
## 3
anova(Fec_lmer_Fricke)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 4506.3 563.29 8 146.12 0.4525 0.8873
summary(Fec_lmer_Fricke)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: NumberOfAdultsEclosed ~ Population + (1 | Population:Line) +
## (1 | Batch)
## Data: d_Fec[d_Fec$Supervisor.PI == "Fricke", ]
##
## REML criterion at convergence: 9249.1
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.8102 -0.6481 -0.0705 0.5894 3.4523
##
## Random effects:
## Groups Name Variance Std.Dev.
## Population:Line (Intercept) 455.06 21.332
## Batch (Intercept) 41.26 6.423
## Residual 1244.86 35.283
## Number of obs: 916, groups: Population:Line, 161; Batch, 8
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 61.074 6.779 95.724 9.009 2.05e-14 ***
## PopulationGI -10.583 9.374 152.556 -1.129 0.261
## PopulationKA -10.298 8.769 143.094 -1.174 0.242
## PopulationMA -5.089 8.673 146.815 -0.587 0.558
## PopulationMU -4.207 8.875 147.002 -0.474 0.636
## PopulationRE -3.612 9.302 151.133 -0.388 0.698
## PopulationUM -14.075 8.963 148.011 -1.570 0.118
## PopulationVA -7.192 8.825 149.162 -0.815 0.416
## PopulationYE -8.232 8.793 151.818 -0.936 0.351
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.623
## PopulatinKA -0.665 0.483
## PopulatinMA -0.671 0.486 0.522
## PopulatinMU -0.667 0.475 0.511 0.513
## PopulatinRE -0.628 0.455 0.487 0.495 0.478
## PopulatinUM -0.653 0.472 0.505 0.514 0.495 0.479
## PopulatinVA -0.668 0.477 0.513 0.521 0.510 0.484 0.503
## PopulatinYE -0.668 0.480 0.514 0.522 0.507 0.486 0.506 0.511
intersect_Fec <- intersect(d_Fec$Line[d_Fec$Supervisor.PI == "Billeter"], d_Fec$Line[d_Fec$Supervisor.PI == "Fricke"])
length(intersect_Fec)
## [1] 152
write(intersect_Fec, file ="Fecundity/Fec_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Flatt Lab : Esra Durmaz, Envel Kerdaffrec, Thibault Schowing, Virginie Thieu, Marisa Rodrigues, Thomas Flatt
Parsch Lab : Amanda Glaser-Schmitt, Eliza Argyridou, John Parsch
Pasyukova Lab : Natalia Roshina, Alexander Symonenko, Mikhail Trostnikov, Evgenia Tsybul’ko, Ekaterina Veselkina, Olga Rybina, Elena Pasyukova
d_LS_L <- read.csv("MasterSheets_Oct21_git/LSL_MasterSheet_Oct21.csv")
str(d_LS_L)
## 'data.frame': 39844 obs. of 15 variables:
## $ Supervisor.PI : chr "Pasyukova" "Pasyukova" "Pasyukova" "Pasyukova" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Pasyukova_1_AK1_1" "Pasyukova_1_AK1_1" "Pasyukova_1_AK1_1" "Pasyukova_1_AK1_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ LSL_AgeAtDeath_days: int 10 37 41 42 42 45 45 45 45 46 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_LS_L$Supervisor.PI <- as.factor(d_LS_L$Supervisor.PI)
d_LS_L$Diet <- as.factor(d_LS_L$Diet)
d_LS_L$Batch <- as.factor(d_LS_L$Batch)
d_LS_L$Population <- as.factor(d_LS_L$Population)
d_LS_L$Population_Lat <- factor(d_LS_L$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_LS_L$Population_Lon <- factor(d_LS_L$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_LS_L$Population_Alt <- factor(d_LS_L$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_LS_L$Line <- as.factor(d_LS_L$Line)
d_LS_L$ReplicateVial <- as.factor(d_LS_L$ReplicateVial)
d_LS_L$LSL_AgeAtDeath_days <- as.numeric(d_LS_L$LSL_AgeAtDeath_days)
d_LS_L$Censor <- as.factor(d_LS_L$Censor)
str(d_LS_L)
## 'data.frame': 39844 obs. of 18 variables:
## $ Supervisor.PI : Factor w/ 2 levels "Parsch","Pasyukova": 2 2 2 2 2 2 2 2 2 2 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Line : Factor w/ 171 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 2032 levels "Parsch_1_AK1_1",..: 681 681 681 681 681 681 681 681 681 681 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ LSL_AgeAtDeath_days: num 10 37 41 42 42 45 45 45 45 46 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_LS_L_F <-subset(d_LS_L,Sex=='F')
d_LS_L_M <-subset(d_LS_L,Sex=='M')
d_LS_P <- read.csv("MasterSheets_Oct21_git/LSP_MasterSheet_Oct21.csv")
str(d_LS_P)
## 'data.frame': 10612 obs. of 14 variables:
## $ Supervisor.PI : chr "Flatt" "Flatt" "Flatt" "Flatt" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateCageOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateCage : chr "Flatt_AK_F_1" "Flatt_AK_F_1" "Flatt_AK_F_1" "Flatt_AK_F_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : int 1 1 1 1 0 0 0 1 0 0 ...
## $ LSP_AgeAtDeath_days: int 11 11 17 23 26 26 33 33 40 43 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_LS_P$Supervisor.PI <- as.factor(d_LS_P$Supervisor.PI)
d_LS_P$Diet <- as.factor(d_LS_P$Diet)
d_LS_P$Batch <- as.factor(d_LS_P$Batch)
d_LS_P$Population <- as.factor(d_LS_P$Population)
d_LS_P$Population_Lat <- factor(d_LS_P$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_LS_P$Population_Lon <- factor(d_LS_P$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_LS_P$Population_Alt <- factor(d_LS_P$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_LS_P$ReplicateCage <- as.factor(d_LS_P$ReplicateCage)
d_LS_P$LSP_AgeAtDeath_days <- as.numeric(d_LS_P$LSP_AgeAtDeath_days)
d_LS_P$Censor <- as.factor(d_LS_P$Censor)
str(d_LS_P)
## 'data.frame': 10612 obs. of 17 variables:
## $ Supervisor.PI : Factor w/ 1 level "Flatt": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 1 level "1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateCageOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateCage : Factor w/ 180 levels "Flatt_AK_F_1",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 1 ...
## $ LSP_AgeAtDeath_days: num 11 11 17 23 26 26 33 33 40 43 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_LS_P_F <-subset(d_LS_P,Sex=='F')
d_LS_P_M <-subset(d_LS_P,Sex=='M')
d_LS_M <- read.csv("MasterSheets_Oct21_git/LSM_MasterSheet_Oct21.csv")
str(d_LS_M)
## 'data.frame': 50456 obs. of 12 variables:
## $ Supervisor.PI : chr "Pasyukova" "Pasyukova" "Pasyukova" "Pasyukova" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ LSM_AgeAtDeath_days: int 10 37 41 42 42 45 45 45 45 46 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_LS_M$Supervisor.PI <- as.factor(d_LS_M$Supervisor.PI)
d_LS_M$Diet <- as.factor(d_LS_M$Diet)
d_LS_M$Batch <- as.factor(d_LS_M$Batch)
d_LS_M$Population <- as.factor(d_LS_M$Population)
d_LS_M$Population_Lat <- factor(d_LS_M$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_LS_M$Population_Lon <- factor(d_LS_M$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_LS_M$Population_Alt <- factor(d_LS_M$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_LS_M$LSM_AgeAtDeath_days <- as.numeric(d_LS_M$LSM_AgeAtDeath_days)
d_LS_M$Censor <- as.factor(d_LS_M$Censor)
str(d_LS_M)
## 'data.frame': 50456 obs. of 15 variables:
## $ Supervisor.PI : Factor w/ 3 levels "Flatt","Parsch",..: 3 3 3 3 3 3 3 3 3 3 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
## $ LSM_AgeAtDeath_days: num 10 37 41 42 42 45 45 45 45 46 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_LS_M_F <-subset(d_LS_M,Sex=='F')
d_LS_M_M <-subset(d_LS_M,Sex=='M')
Descriptive statistics at the line level, with batch information :
table_LS_L_Line_wbatch <- write.csv(d_LS_L %>% group_by(Supervisor.PI, Batch, Sex, Population, Line) %>%
summarise_at(vars(LSL_AgeAtDeath_days),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Lifespan/table_LS_L_Line_wbatch.csv", row.names = T)
table_LS_L_Line_wbatch <- read.csv("Lifespan/table_LS_L_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_LS_L_Line_wobatch <- write.csv(d_LS_L %>% group_by(Supervisor.PI, Sex, Population, Line) %>%
summarise_at(vars(LSL_AgeAtDeath_days),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Lifespan/table_LS_L_Line_wobatch.csv", row.names = T)
table_LS_L_Line_wobatch <- read.csv("Lifespan/table_LS_L_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_LS_M_Pop_wbatch <- write.csv(d_LS_M %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(LSM_AgeAtDeath_days),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Lifespan/table_LS_M_Pop_wbatch.csv", row.names = T)
table_LS_M_Pop_wbatch <- read.csv("Lifespan/table_LS_M_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_LS_M_Pop_wobatch <- write.csv(d_LS_M %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(LSM_AgeAtDeath_days),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Lifespan/table_LS_M_Pop_wobatch.csv", row.names = T)
table_LS_M_Pop_wobatch <- read.csv("Lifespan/table_LS_M_Pop_wobatch.csv")
str(d_LS_P)
## 'data.frame': 10612 obs. of 17 variables:
## $ Supervisor.PI : Factor w/ 1 level "Flatt": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 1 level "1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : Factor w/ 9 levels "AK","GI","KA",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateCageOld : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateCage : Factor w/ 180 levels "Flatt_AK_F_1",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Censor : Factor w/ 2 levels "0","1": 2 2 2 2 1 1 1 2 1 1 ...
## $ LSP_AgeAtDeath_days: num 11 11 17 23 26 26 33 33 40 43 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_LS_P_F_Flatt_lmer <- lmer(LSP_AgeAtDeath_days ~ Population + (1|Population:ReplicateCage), data = filter(d_LS_P_F, (Censor == "0") | (Supervisor.PI == "Flatt")))
capture.output(summary(d_LS_P_F_Flatt_lmer),file = "Lifespan/d_LS_P_F_Flatt_lmer_sum.txt")
capture.output(anova(d_LS_P_F_Flatt_lmer),file = "Lifespan/d_LS_P_F_Flatt_lmer.txt")
#capture.output(emmeans(d_LS_P_F_Flatt_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_P_F_Flatt_lmer_tk.txt")
anova(d_LS_P_F_Flatt_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 56200 7025 8 81.189 35.081 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_P_F_Flatt_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: LSP_AgeAtDeath_days ~ Population + (1 | Population:ReplicateCage)
## Data: filter(d_LS_P_F, (Censor == "0") | (Supervisor.PI == "Flatt"))
##
## REML criterion at convergence: 43400.4
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.7835 -0.5617 0.0172 0.6469 3.1886
##
## Random effects:
## Groups Name Variance Std.Dev.
## Population:ReplicateCage (Intercept) 4.454 2.111
## Residual 200.249 14.151
## Number of obs: 5327, groups: Population:ReplicateCage, 90
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 57.104 0.884 80.691 64.596 < 2e-16 ***
## PopulationGI -15.121 1.249 80.463 -12.103 < 2e-16 ***
## PopulationKA -3.333 1.250 80.520 -2.667 0.00925 **
## PopulationMA -8.913 1.252 81.054 -7.121 3.93e-10 ***
## PopulationMU -1.238 1.252 81.287 -0.989 0.32579
## PopulationRE -13.142 1.250 80.691 -10.512 < 2e-16 ***
## PopulationUM -8.045 1.256 81.983 -6.407 8.82e-09 ***
## PopulationVA -3.441 1.252 81.172 -2.748 0.00739 **
## PopulationYE -8.693 1.250 80.633 -6.954 8.41e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.708
## PopulatinKA -0.707 0.501
## PopulatinMA -0.706 0.500 0.500
## PopulatinMU -0.706 0.499 0.499 0.498
## PopulatinRE -0.707 0.500 0.500 0.499 0.499
## PopulatinUM -0.704 0.498 0.498 0.497 0.497 0.498
## PopulatinVA -0.706 0.500 0.499 0.499 0.498 0.499 0.497
## PopulatinYE -0.707 0.500 0.500 0.499 0.499 0.500 0.498 0.499
d_LS_P_M_Flatt_lmer <- lmer(LSP_AgeAtDeath_days ~ Population + (1|Population:ReplicateCage), data = filter(d_LS_P_M, (Censor == "0") | (Supervisor.PI == "Flatt")))
capture.output(summary(d_LS_P_M_Flatt_lmer),file = "Lifespan/d_LS_P_M_Flatt_lmer_sum.txt")
capture.output(anova(d_LS_P_M_Flatt_lmer),file = "Lifespan/d_LS_P_M_Flatt_lmer.txt")
#capture.output(emmeans(d_LS_P_F_Flatt_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_P_M_Flatt_lmer_tk.txt")
anova(d_LS_P_M_Flatt_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 9600.6 1200.1 8 80.393 6.182 3.329e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_P_M_Flatt_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: LSP_AgeAtDeath_days ~ Population + (1 | Population:ReplicateCage)
## Data: filter(d_LS_P_M, (Censor == "0") | (Supervisor.PI == "Flatt"))
##
## REML criterion at convergence: 42878.5
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.6182 -0.6293 -0.0147 0.6613 3.0856
##
## Random effects:
## Groups Name Variance Std.Dev.
## Population:ReplicateCage (Intercept) 2.966 1.722
## Residual 194.125 13.933
## Number of obs: 5285, groups: Population:ReplicateCage, 90
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 49.9923 0.7911 80.0012 63.196 < 2e-16 ***
## PopulationGI -0.9213 1.1212 80.6444 -0.822 0.41366
## PopulationKA 4.7140 1.1219 80.8729 4.202 6.77e-05 ***
## PopulationMA 1.5880 1.1196 80.2139 1.418 0.15994
## PopulationMU 3.7648 1.1151 78.9621 3.376 0.00114 **
## PopulationRE -0.7962 1.1179 79.7147 -0.712 0.47839
## PopulationUM 1.4330 1.1198 80.1975 1.280 0.20433
## PopulationVA -0.1026 1.1234 81.2365 -0.091 0.92746
## PopulationYE 0.6306 1.1188 79.9994 0.564 0.57455
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.706
## PopulatinKA -0.705 0.498
## PopulatinMA -0.707 0.499 0.498
## PopulatinMU -0.709 0.501 0.500 0.501
## PopulatinRE -0.708 0.499 0.499 0.500 0.502
## PopulatinUM -0.706 0.498 0.498 0.499 0.501 0.500
## PopulatinVA -0.704 0.497 0.497 0.498 0.500 0.498 0.497
## PopulatinYE -0.707 0.499 0.499 0.500 0.502 0.500 0.500 0.498
d_LS_L_F_Parsch_lmer <- lmer(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_F, (Censor == "0") | (Supervisor.PI == "Parsch")))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge with max|grad| = 0.0570562 (tol = 0.002, component 1)
capture.output(summary(d_LS_L_F_Parsch_lmer),file = "Lifespan/d_LS_L_F_Parsch_lmer_sum.txt")
capture.output(anova(d_LS_L_F_Parsch_lmer),file = "Lifespan/d_LS_L_F_Parsch_lmer.txt")
#capture.output(emmeans(d_LS_L_F_Parsch_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_F_Parsch_lmer_tk.txt")
anova(d_LS_L_F_Parsch_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 7129.9 891.23 8 157.94 3.6879 0.0005673 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_L_F_Parsch_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## LSL_AgeAtDeath_days ~ Population + (1 | Batch) + (1 | Population:Line) +
## (1 | Line:ReplicateVial)
## Data: filter(d_LS_L_F, (Censor == "0") | (Supervisor.PI == "Parsch"))
##
## REML criterion at convergence: 169796.9
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -4.5141 -0.5694 0.0877 0.6511 3.4519
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:ReplicateVial (Intercept) 64.206 8.013
## Population:Line (Intercept) 16.591 4.073
## Batch (Intercept) 5.626 2.372
## Residual 241.667 15.546
## Number of obs: 20060, groups:
## Line:ReplicateVial, 2032; Population:Line, 171; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 47.5238 1.9832 2.0601 23.964 0.001493 **
## PopulationGI -0.9367 1.6571 159.4727 -0.565 0.572691
## PopulationKA 1.3602 1.5282 160.6589 0.890 0.374769
## PopulationMA -3.4793 1.5283 160.7044 -2.277 0.024131 *
## PopulationMU -1.5409 1.5283 160.7037 -1.008 0.314835
## PopulationRE -3.4747 1.6111 155.7849 -2.157 0.032562 *
## PopulationUM -5.6728 1.5662 158.5411 -3.622 0.000393 ***
## PopulationVA -0.5013 1.5275 160.3622 -0.328 0.743217
## PopulationYE -2.9382 1.5283 160.7109 -1.923 0.056306 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.340
## PopulatinKA -0.369 0.441
## PopulatinMA -0.369 0.441 0.479
## PopulatinMU -0.369 0.441 0.479 0.479
## PopulatinRE -0.350 0.419 0.454 0.454 0.454
## PopulatinUM -0.360 0.431 0.467 0.467 0.467 0.443
## PopulatinVA -0.369 0.442 0.479 0.479 0.479 0.454 0.467
## PopulatinYE -0.369 0.441 0.479 0.479 0.479 0.454 0.467 0.479
## optimizer (nloptwrap) convergence code: 0 (OK)
## Model failed to converge with max|grad| = 0.0570562 (tol = 0.002, component 1)
d_LS_L_M_Parsch_lmer <- lmer(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_M, (Censor == "0") | (Supervisor.PI == "Parsch")))
capture.output(summary(d_LS_L_M_Parsch_lmer),file = "Lifespan/d_LS_L_M_Parsch_lmer_sum.txt")
capture.output(anova(d_LS_L_M_Parsch_lmer),file = "Lifespan/d_LS_L_M_Parsch_lmer.txt")
#capture.output(emmeans(d_LS_L_F_Parsch_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_M_Parsch_lmer_tk.txt")
anova(d_LS_L_M_Parsch_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 13006 1625.7 8 159.44 5.232 8.028e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_L_M_Parsch_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## LSL_AgeAtDeath_days ~ Population + (1 | Batch) + (1 | Population:Line) +
## (1 | Line:ReplicateVial)
## Data: filter(d_LS_L_M, (Censor == "0") | (Supervisor.PI == "Parsch"))
##
## REML criterion at convergence: 171913.1
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.7322 -0.5646 0.0600 0.6591 3.1226
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:ReplicateVial (Intercept) 54.494 7.382
## Population:Line (Intercept) 21.873 4.677
## Batch (Intercept) 2.048 1.431
## Residual 310.726 17.627
## Number of obs: 19784, groups:
## Line:ReplicateVial, 2031; Population:Line, 171; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 52.4039 1.5414 4.9035 33.998 5.18e-07 ***
## PopulationGI -4.7778 1.8223 160.9799 -2.622 0.009584 **
## PopulationKA 1.1110 1.6800 161.6111 0.661 0.509358
## PopulationMA -4.4167 1.6805 161.8005 -2.628 0.009407 **
## PopulationMU -0.2243 1.6802 161.7073 -0.134 0.893952
## PopulationRE -4.6719 1.7743 157.6216 -2.633 0.009305 **
## PopulationUM -5.6864 1.7232 159.9025 -3.300 0.001192 **
## PopulationVA -0.8806 1.6795 161.4186 -0.524 0.600761
## PopulationYE -6.1986 1.6800 161.6150 -3.690 0.000306 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.481
## PopulatinKA -0.522 0.441
## PopulatinMA -0.522 0.441 0.478
## PopulatinMU -0.522 0.441 0.478 0.478
## PopulatinRE -0.494 0.418 0.453 0.453 0.453
## PopulatinUM -0.509 0.430 0.466 0.466 0.466 0.442
## PopulatinVA -0.522 0.441 0.479 0.478 0.478 0.453 0.467
## PopulatinYE -0.522 0.441 0.478 0.478 0.478 0.453 0.466 0.479
d_LS_L_F_Pasyukova_lmer <- lmer(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_F, (Censor == "0") | (Supervisor.PI == "Pasyukova")))
capture.output(summary(d_LS_L_F_Pasyukova_lmer),file = "Lifespan/d_LS_L_F_Pasyukova_lmer_sum.txt")
capture.output(anova(d_LS_L_F_Pasyukova_lmer),file = "Lifespan/d_LS_L_F_Pasyukova_lmer.txt")
#capture.output(emmeans(d_LS_L_F_Pasyukova_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_F_Pasyukova_lmer_tk.txt")
anova(d_LS_L_F_Pasyukova_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 6712.4 839.05 8 157.04 3.7279 0.0005104 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_L_F_Pasyukova_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## LSL_AgeAtDeath_days ~ Population + (1 | Batch) + (1 | Population:Line) +
## (1 | Line:ReplicateVial)
## Data: filter(d_LS_L_F, (Censor == "0") | (Supervisor.PI == "Pasyukova"))
##
## REML criterion at convergence: 155241.4
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.8190 -0.5579 0.0823 0.6471 3.5974
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:ReplicateVial (Intercept) 72.171 8.495
## Population:Line (Intercept) 17.122 4.138
## Batch (Intercept) 9.486 3.080
## Residual 225.077 15.003
## Number of obs: 18454, groups:
## Line:ReplicateVial, 2031; Population:Line, 171; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 48.3293 2.4331 1.5244 19.863 0.007994 **
## PopulationGI 0.1052 1.7035 159.0276 0.062 0.950855
## PopulationKA 1.4014 1.5672 159.3333 0.894 0.372558
## PopulationMA -3.4992 1.5681 159.7340 -2.231 0.027042 *
## PopulationMU -1.5542 1.5672 159.3448 -0.992 0.322846
## PopulationRE -3.2554 1.6524 154.5120 -1.970 0.050611 .
## PopulationUM -5.7326 1.6065 157.3219 -3.568 0.000476 ***
## PopulationVA -0.6143 1.5662 158.9060 -0.392 0.695420
## PopulationYE -3.0447 1.5677 159.5846 -1.942 0.053891 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.284
## PopulatinKA -0.308 0.440
## PopulatinMA -0.308 0.440 0.478
## PopulatinMU -0.308 0.440 0.479 0.478
## PopulatinRE -0.293 0.417 0.454 0.454 0.454
## PopulatinUM -0.301 0.429 0.467 0.467 0.467 0.443
## PopulatinVA -0.308 0.440 0.479 0.479 0.479 0.454 0.467
## PopulatinYE -0.308 0.440 0.478 0.478 0.478 0.454 0.467 0.479
d_LS_L_M_Pasyukova_lmer <- lmer(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_M, (Censor == "0") | (Supervisor.PI == "Pasyukova")))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge with max|grad| = 0.0919725 (tol = 0.002, component 1)
capture.output(summary(d_LS_L_M_Pasyukova_lmer),file = "Lifespan/d_LS_L_M_Pasyukova_lmer_sum.txt")
capture.output(anova(d_LS_L_M_Pasyukova_lmer),file = "Lifespan/d_LS_L_M_Pasyukova_lmer.txt")
#capture.output(emmeans(d_LS_L_F_Pasyukova_lmer, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_M_Pasyukova_lmer_tk.txt")
anova(d_LS_L_M_Pasyukova_lmer)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 11806 1475.7 8 158.94 4.9428 1.784e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(d_LS_L_M_Pasyukova_lmer)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula:
## LSL_AgeAtDeath_days ~ Population + (1 | Batch) + (1 | Population:Line) +
## (1 | Line:ReplicateVial)
## Data: filter(d_LS_L_M, (Censor == "0") | (Supervisor.PI == "Pasyukova"))
##
## REML criterion at convergence: 158894.8
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.8591 -0.5617 0.0592 0.6521 3.0622
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:ReplicateVial (Intercept) 61.75 7.858
## Population:Line (Intercept) 22.23 4.715
## Batch (Intercept) 3.58 1.892
## Residual 298.55 17.279
## Number of obs: 18341, groups:
## Line:ReplicateVial, 2031; Population:Line, 171; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 53.2082 1.7870 2.6230 29.776 0.000216 ***
## PopulationGI -4.0298 1.8616 161.3262 -2.165 0.031879 *
## PopulationKA 1.0823 1.7114 160.9847 0.632 0.528007
## PopulationMA -4.6832 1.7117 161.0935 -2.736 0.006918 **
## PopulationMU -0.3987 1.7109 160.7800 -0.233 0.816028
## PopulationRE -4.6312 1.8071 156.8274 -2.563 0.011326 *
## PopulationUM -5.5839 1.7557 159.3747 -3.180 0.001768 **
## PopulationVA -0.9718 1.7110 160.8212 -0.568 0.570864
## PopulationYE -6.4442 1.7115 161.0280 -3.765 0.000233 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.421
## PopulatinKA -0.458 0.440
## PopulatinMA -0.458 0.440 0.478
## PopulatinMU -0.458 0.440 0.479 0.478
## PopulatinRE -0.434 0.416 0.453 0.453 0.453
## PopulatinUM -0.447 0.429 0.466 0.466 0.466 0.442
## PopulatinVA -0.458 0.440 0.478 0.478 0.479 0.453 0.466
## PopulatinYE -0.458 0.440 0.478 0.478 0.478 0.453 0.466 0.478
## optimizer (nloptwrap) convergence code: 0 (OK)
## Model failed to converge with max|grad| = 0.0919725 (tol = 0.002, component 1)
d_LS_P_F_Flatt_coxme <- coxme(LSP_AgeAtDeath_days ~ Population + (1|Population:ReplicateCage), data = filter(d_LS_P_F, (Censor == "0") | (Supervisor.PI == "Flatt")))
capture.output(summary(d_LS_P_F_Flatt_coxme),file = "Lifespan/d_LS_P_F_Flatt_coxme_sum.txt")
capture.output(anova(d_LS_P_F_Flatt_coxme),file = "Lifespan/d_LS_P_F_Flatt_coxme.txt")
#capture.output(emmeans(d_LS_P_F_Flatt_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_P_F_Flatt_coxme_tk.txt")
d_LS_P_M_Flatt_coxme <- coxme(LSP_AgeAtDeath_days ~ Population + (1|Population:ReplicateCage), data = filter(d_LS_P_M, (Censor == "0") | (Supervisor.PI == "Flatt")))
capture.output(summary(d_LS_P_M_Flatt_coxme),file = "Lifespan/d_LS_P_M_Flatt_coxme_sum.txt")
capture.output(anova(d_LS_P_M_Flatt_coxme),file = "Lifespan/d_LS_P_M_Flatt_coxme.txt")
#capture.output(emmeans(d_LS_P_F_Flatt_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_P_M_Flatt_coxme_tk.txt")
d_LS_L_F_Parsch_coxme <- coxme(LSL_AgeAtDeath_days, Censor ~ Population + (1|Batch) + (1|Line/Population) +
(1|Line:ReplicateVial), data = subset(d_LS_L_F,Supervisor.PI=='Parsch'))
capture.output(summary(d_LS_L_F_Parsch_coxme),file = "Lifespan/d_LS_L_F_Parsch_coxme_sum.txt")
capture.output(anova(d_LS_L_F_Parsch_coxme),file = "Lifespan/d_LS_L_F_Parsch_coxme.txt")
#capture.output(emmeans(d_LS_L_F_Parsch_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "Lifespan/d_LS_L_F_Parsch_coxme_tk.txt")
d_LS_L_M_Parsch_coxme <- coxme(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = data = subset(d_LS_L_M,Supervisor.PI=='Parsch'))
capture.output(summary(d_LS_L_M_Parsch_coxme),file = "Lifespan/d_LS_L_M_Parsch_coxme_sum.txt")
capture.output(anova(d_LS_L_M_Parsch_coxme),file = "Lifespan/d_LS_L_M_Parsch_coxme.txt")
#capture.output(emmeans(d_LS_L_M_Parsch_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "Lifespam/d_LS_L_M_Parsch_coxme_tk.txt")
d_LS_L_F_Pasyukova_coxme <- coxme(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_F, (Censor == "0") | (Supervisor.PI == "Pasyukova")))
capture.output(summary(d_LS_L_F_Pasyukova_coxme),file = "Lifespan/d_LS_L_F_Pasyukova_coxme_sum.txt")
capture.output(anova(d_LS_L_F_Pasyukova_coxme),file = "Lifespan/d_LS_L_F_Pasyukova_coxme.txt")
#capture.output(emmeans(d_LS_L_F_Pasyukova_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_F_Pasyukova_coxme_tk.txt")
d_LS_L_M_Pasyukova_coxme <- coxme(LSL_AgeAtDeath_days ~ Population + (1|Batch) + (1|Population:Line) +
(1|Line:ReplicateVial), data = filter(d_LS_L_M, (Censor == "0") | (Supervisor.PI == "Pasyukova")))
capture.output(summary(d_LS_L_M_Pasyukova_coxme),file = "Lifespan/d_LS_L_M_Pasyukova_coxme_sum.txt")
capture.output(anova(d_LS_L_M_Pasyukova_coxme),file = "Lifespan/d_LS_L_M_Pasyukova_coxme.txt")
#capture.output(emmeans(d_LS_L_F_Pasyukova_coxme, list(pairwise ~ Population), adjust = "tukey"),file = "d_LS_L_M_Pasyukova_coxme_tk.txt")
intersect_LSL <- intersect(d_LSL$Line[d_LSL$Supervisor.PI == "Parsch"],
d_LSL$d_LSL[d_Fec$Supervisor.PI == "Pasyukova"])
length(intersect_LSL)
write(intersect_LSL, file ="Lifespan/Lifespan/LSL_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Gonzalez Lab : Llewellyn Green, Josefa Gonzalez, Miriam Merenciano
Kozeretska Lab : Svitlana Serga, Alexandra Protsenko, Oleksandr Maistrenko, Iryna Kozeretska
Vieira Lab : Jorge Vieira, Cristina P. Vieira, Pedro Duque, Tânia Dias
d_CSM <- read.csv("MasterSheets_Oct21_git/CSM_MasterSheet_Oct21.csv")
str(d_CSM)
## 'data.frame': 2584 obs. of 16 variables:
## $ Supervisor.PI : chr "Gonzalez" "Gonzalez" "Gonzalez" "Gonzalez" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 1 2 3 1 3 4 1 2 3 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK10" ...
## $ Sex : chr "M" "M" "M" "M" ...
## $ ReplicateVialOld: int 1 2 3 1 2 3 1 2 3 1 ...
## $ ReplicateVial : chr "Gonzalez_1_AK1_M_1" "Gonzalez_2_AK1_M_2" "Gonzalez_3_AK1_M_3" "Gonzalez_1_AK10_M_1" ...
## $ Total : int 20 19 18 20 20 20 16 20 18 16 ...
## $ Dead : int 14 11 3 16 4 11 8 17 4 16 ...
## $ CSM_PropDead : num 70 57.9 16.7 80 20 55 50 85 22.2 100 ...
## $ CSM_PropDead_ED : num 0.7 0.579 0.167 0.8 0.2 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_CSM$Supervisor.PI <- as.factor(d_CSM$Supervisor.PI)
d_CSM$Diet <- as.factor(d_CSM$Diet)
d_CSM$Batch <- as.factor(d_CSM$Batch)
d_CSM$Population_Lat <- factor(d_CSM$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_CSM$Population_Lon <- factor(d_CSM$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_CSM$Population_Alt <- factor(d_CSM$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_CSM$Line <- as.factor(d_CSM$Line)
d_CSM$Sex <- as.factor(d_CSM$Sex)
d_CSM$ReplicateVial <- as.factor(d_CSM$ReplicateVial)
d_CSM$CSM_PropDead_ED <- as.numeric(d_CSM$CSM_PropDead_ED)
str(d_CSM)
## 'data.frame': 2584 obs. of 19 variables:
## $ Supervisor.PI : Factor w/ 3 levels "Gonzalez","Kozeretska",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 32 levels "1","2","3","4",..: 1 2 3 1 3 4 1 2 3 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 172 levels "AK1","AK10","AK11",..: 1 1 1 2 2 2 3 3 3 4 ...
## $ Sex : Factor w/ 2 levels "F","M": 2 2 2 2 2 2 2 2 2 2 ...
## $ ReplicateVialOld: int 1 2 3 1 2 3 1 2 3 1 ...
## $ ReplicateVial : Factor w/ 2584 levels "Gonzalez_1_AK1_F_1",..: 2 152 342 4 344 584 6 154 346 8 ...
## $ Total : int 20 19 18 20 20 20 16 20 18 16 ...
## $ Dead : int 14 11 3 16 4 11 8 17 4 16 ...
## $ CSM_PropDead : num 70 57.9 16.7 80 20 55 50 85 22.2 100 ...
## $ CSM_PropDead_ED : num 0.7 0.579 0.167 0.8 0.2 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_CSM_F <-subset(d_CSM,Sex=='F')
d_CSM_M <-subset(d_CSM,Sex=='M')
Descriptive statistics at the line level, with batch information :
table_CSM_Line_wbatch <- write.csv(d_CSM %>% group_by(Supervisor.PI, Batch, Sex,Population, Line) %>%
summarise_at(vars(CSM_PropDead_ED),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ColdShock/table_CSM_Line_wbatch.csv", row.names = T)
table_CSM_Line_wbatch <- read.csv("ColdShock/table_CSM_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_CSM_Line_wobatch <- write.csv(d_CSM %>% group_by(Supervisor.PI, Sex,Population, Line) %>%
summarise_at(vars(CSM_PropDead_ED),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ColdShock/table_CSM_Line_wobatch.csv", row.names = T)
table_CSM_Line_wobatch <- read.csv("ColdShock/table_CSM_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_CSM_Pop_wbatch <- write.csv(d_CSM %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(CSM_PropDead_ED),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ColdShock/table_CSM_Pop_wbatch.csv", row.names = T)
table_CSM_Pop_wbatch <- read.csv("ColdShock/table_CSM_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_CSM_Pop_wobatch <- write.csv(d_CSM %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(CSM_PropDead_ED),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ColdShock/table_CSM_Pop_wobatch.csv", row.names = T)
table_CSM_Pop_wobatch <- read.csv("ColdShock/table_CSM_Pop_wobatch.csv")
CSM_F_lmer_Gonzalez <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_F[d_CSM_F$Supervisor.PI == "Gonzalez",])
capture.output(summary(CSM_F_lmer_Gonzalez),file = "ColdShock/CSM_F_lmer_sum_Gonzalez.txt")
capture.output(anova(CSM_F_lmer_Gonzalez),file = "ColdShock/CSM_F_lmer_Gonzalez.txt")
#capture.output(emmeans(CSM_F_lmer_Gonzalez, list(pairwise ~ Population), adjust = "tukey"),file = "ColdShock/CSM_F_lmer_Gonzalez_tk.txt")
anova(CSM_F_lmer_Gonzalez)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.23689 0.029611 8 147.79 2.0838 0.04081 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(CSM_F_lmer_Gonzalez)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_F[d_CSM_F$Supervisor.PI == "Gonzalez", ]
##
## REML criterion at convergence: -520.5
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -5.5262 -0.3749 0.0953 0.5610 2.1847
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.009816 0.09908
## Batch (Intercept) 0.004154 0.06446
## Residual 0.014210 0.11921
## Number of obs: 544, groups: Line:Population, 160; Batch, 9
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.90153 0.03466 38.43318 26.012 < 2e-16 ***
## PopulationGI -0.12282 0.04078 149.17844 -3.012 0.00305 **
## PopulationKA -0.04468 0.04032 141.60280 -1.108 0.26970
## PopulationMA -0.04930 0.03770 147.58260 -1.308 0.19306
## PopulationMU -0.01935 0.03769 147.49918 -0.513 0.60843
## PopulationRE -0.06020 0.03988 144.99929 -1.509 0.13338
## PopulationUM -0.12161 0.04146 145.85344 -2.933 0.00390 **
## PopulationVA -0.06774 0.03750 144.50600 -1.806 0.07295 .
## PopulationYE -0.02716 0.03757 144.25475 -0.723 0.47085
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.492
## PopulatinKA -0.503 0.425
## PopulatinMA -0.541 0.454 0.461
## PopulatinMU -0.535 0.454 0.460 0.492
## PopulatinRE -0.520 0.430 0.438 0.469 0.465
## PopulatinUM -0.488 0.413 0.418 0.448 0.446 0.424
## PopulatinVA -0.533 0.456 0.460 0.491 0.493 0.464 0.447
## PopulatinYE -0.549 0.456 0.466 0.498 0.494 0.476 0.451 0.493
CSM_M_lmer_Gonzalez <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_M[d_CSM_M$Supervisor.PI == "Gonzalez",])
capture.output(summary(CSM_M_lmer_Gonzalez),file = "ColdShock/CSM_M_lmer_sum_Gonzalez.txt")
capture.output(anova(CSM_M_lmer_Gonzalez),file = "ColdShock/CSM_M_lmer_Gonzalez.txt")
#capture.output(emmeans(CSM_M_lmer_Gonzalez, list(pairwise ~ Population), adjust = "tukey"),file = "ColdShock/CSM_M_lmer_Gonzalez_tk.txt")
anova(CSM_M_lmer_Gonzalez)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.45071 0.056339 8 147.45 1.8358 0.07473 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(CSM_M_lmer_Gonzalez)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_M[d_CSM_M$Supervisor.PI == "Gonzalez", ]
##
## REML criterion at convergence: -119.7
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.2121 -0.6190 0.0413 0.5522 2.3695
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.01754 0.1324
## Batch (Intercept) 0.02650 0.1628
## Residual 0.03069 0.1752
## Number of obs: 544, groups: Line:Population, 160; Batch, 9
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.58500 0.06612 16.18080 8.848 1.34e-07 ***
## PopulationGI 0.05231 0.05625 149.24556 0.930 0.3540
## PopulationKA 0.07690 0.05552 140.38031 1.385 0.1682
## PopulationMA 0.02889 0.05199 147.22136 0.556 0.5793
## PopulationMU 0.01273 0.05197 147.11973 0.245 0.8068
## PopulationRE 0.01281 0.05499 144.17279 0.233 0.8161
## PopulationUM -0.04735 0.05715 145.02817 -0.828 0.4088
## PopulationVA -0.02483 0.05167 143.68168 -0.481 0.6315
## PopulationYE 0.12631 0.05178 143.21949 2.439 0.0159 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.354
## PopulatinKA -0.363 0.425
## PopulatinMA -0.390 0.453 0.461
## PopulatinMU -0.386 0.453 0.459 0.490
## PopulatinRE -0.378 0.428 0.438 0.469 0.464
## PopulatinUM -0.352 0.412 0.418 0.447 0.445 0.424
## PopulatinVA -0.384 0.455 0.460 0.490 0.492 0.463 0.447
## PopulatinYE -0.397 0.455 0.466 0.498 0.493 0.477 0.450 0.491
CSM_F_lmer_Kozeretska <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_F[d_CSM_F$Supervisor.PI == "Kozeretska",])
capture.output(summary(CSM_F_lmer_Kozeretska),file = "ColdShock/CSM_F_lmer_sum_Kozeretska.txt")
capture.output(anova(CSM_F_lmer_Kozeretska),file = "ColdShock/CSM_F_lmer_Kozeretska.txt")
#capture.output(emmeans(CSM_F_lmer_Kozeretska, list(pairwise ~ Population), adjust = "tukey"),file = "ColdShock/CSM_F_lmer_Kozeretska_tk.txt")
anova(CSM_F_lmer_Kozeretska)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.30955 0.038693 8 113.18 0.4975 0.8558
summary(CSM_F_lmer_Kozeretska)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_F[d_CSM_F$Supervisor.PI == "Kozeretska", ]
##
## REML criterion at convergence: 134
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -1.6679 -0.7659 -0.1923 0.7403 2.0452
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.01410 0.1188
## Batch (Intercept) 0.01886 0.1373
## Residual 0.07777 0.2789
## Number of obs: 244, groups: Line:Population, 130; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.58276 0.11263 1.58331 5.174 0.0563 .
## PopulationGI -0.06492 0.09797 120.33320 -0.663 0.5088
## PopulationKA -0.13000 0.08839 114.46395 -1.471 0.1441
## PopulationMA -0.10369 0.08107 119.36555 -1.279 0.2034
## PopulationMU -0.05787 0.07982 116.67071 -0.725 0.4700
## PopulationRE -0.08293 0.08718 106.93238 -0.951 0.3437
## PopulationUM -0.14921 0.08915 109.14620 -1.674 0.0971 .
## PopulationVA -0.07710 0.07664 111.92883 -1.006 0.3166
## PopulationYE -0.06517 0.08594 123.29459 -0.758 0.4497
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.284
## PopulatinKA -0.326 0.362
## PopulatinMA -0.333 0.386 0.425
## PopulatinMU -0.337 0.392 0.430 0.477
## PopulatinRE -0.321 0.363 0.409 0.433 0.440
## PopulatinUM -0.303 0.351 0.387 0.427 0.434 0.394
## PopulatinVA -0.346 0.406 0.441 0.499 0.507 0.455 0.453
## PopulatinYE -0.317 0.365 0.404 0.442 0.449 0.410 0.402 0.468
CSM_M_lmer_Kozeretska <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_M[d_CSM_M$Supervisor.PI == "Kozeretska",])
capture.output(summary(CSM_M_lmer_Kozeretska),file = "ColdShock/CSM_M_lmer_sum_Kozeretska.txt")
capture.output(anova(CSM_M_lmer_Kozeretska),file = "ColdShock/CSM_M_lmer_Kozeretska.txt")
#capture.output(emmeans(CSM_M_lmer_Kozeretska, list(pairwise ~ Population), adjust = "tukey"),file = "CSM_M_tk_Kozeretska_tk.txt")
anova(CSM_M_lmer_Kozeretska)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.52668 0.065835 8 114.74 0.8529 0.5585
summary(CSM_M_lmer_Kozeretska)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_M[d_CSM_M$Supervisor.PI == "Kozeretska", ]
##
## REML criterion at convergence: 108.2
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.3573 -0.7476 0.1784 0.7742 1.5219
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.003936 0.06274
## Batch (Intercept) 0.017486 0.13223
## Residual 0.077193 0.27784
## Number of obs: 244, groups: Line:Population, 130; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.76407 0.10668 1.50152 7.162 0.0387 *
## PopulationGI 0.02893 0.08827 123.33258 0.328 0.7437
## PopulationKA -0.10959 0.07942 116.77355 -1.380 0.1703
## PopulationMA -0.02985 0.07299 120.50472 -0.409 0.6833
## PopulationMU -0.09846 0.07180 119.30488 -1.371 0.1729
## PopulationRE -0.07765 0.07801 105.51912 -0.995 0.3218
## PopulationUM -0.11025 0.07988 109.55346 -1.380 0.1703
## PopulationVA -0.06824 0.06878 113.61658 -0.992 0.3232
## PopulationYE 0.01905 0.07753 126.28816 0.246 0.8063
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.270
## PopulatinKA -0.310 0.362
## PopulatinMA -0.316 0.385 0.425
## PopulatinMU -0.320 0.391 0.431 0.478
## PopulatinRE -0.306 0.365 0.411 0.436 0.442
## PopulatinUM -0.289 0.352 0.389 0.429 0.436 0.398
## PopulatinVA -0.328 0.407 0.442 0.501 0.510 0.459 0.457
## PopulatinYE -0.300 0.364 0.403 0.441 0.449 0.412 0.403 0.469
CSM_F_lmer_Vieira <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_F[d_CSM_F$Supervisor.PI == "Vieira",])
capture.output(summary(CSM_F_lmer_Vieira),file = "ColdShock/CSM_F_lmer_sum_Vieira.txt")
capture.output(anova(CSM_F_lmer_Vieira),file = "ColdShock/CSM_F_lmer_Vieira.txt")
#capture.output(emmeans(CSM_F_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "ColdShock/CSM_F_lmer_Vieira_tk.txt")
anova(CSM_F_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.13498 0.016873 8 30.916 1.4465 0.2172
summary(CSM_F_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_F[d_CSM_F$Supervisor.PI == "Vieira", ]
##
## REML criterion at convergence: -527.4
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -5.4994 -0.3263 0.1582 0.4377 2.3707
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.0125606 0.11207
## Batch (Intercept) 0.0008187 0.02861
## Residual 0.0116647 0.10800
## Number of obs: 504, groups: Line:Population, 168; Batch, 32
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.859730 0.030815 43.392191 27.899 <2e-16 ***
## PopulationGI -0.009810 0.047842 94.888362 -0.205 0.838
## PopulationKA 0.033945 0.043920 36.325247 0.773 0.445
## PopulationMA 0.002541 0.044168 30.711068 0.058 0.954
## PopulationMU 0.019576 0.042661 90.161392 0.459 0.647
## PopulationRE 0.002250 0.047249 25.432472 0.048 0.962
## PopulationUM -0.070509 0.043897 53.189794 -1.606 0.114
## PopulationVA 0.072500 0.044440 27.923833 1.631 0.114
## PopulationYE 0.018349 0.044468 27.328834 0.413 0.683
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.615
## PopulatinKA -0.701 0.432
## PopulatinMA -0.698 0.429 0.493
## PopulatinMU -0.672 0.432 0.472 0.469
## PopulatinRE -0.652 0.401 0.463 0.455 0.438
## PopulatinUM -0.691 0.434 0.502 0.482 0.484 0.451
## PopulatinVA -0.693 0.426 0.486 0.484 0.466 0.452 0.479
## PopulatinYE -0.693 0.426 0.486 0.489 0.465 0.452 0.479 0.520
CSM_M_lmer_Vieira <- lmer(CSM_PropDead_ED ~ Population + (1| Line : Population) +
(1|Batch), data = d_CSM_M[d_CSM_M$Supervisor.PI == "Vieira",])
capture.output(summary(CSM_M_lmer_Vieira),file = "ColdShock/CSM_M_lmer_sum_Vieira.txt")
capture.output(anova(CSM_M_lmer_Vieira),file = "ColdShock/CSM_M_lmer_Vieira.txt")
#capture.output(emmeans(CSM_M_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "ColdShock/CSM_M_lmer_Vieira_tk.txt")
anova(CSM_M_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 0.31129 0.038912 8 51.605 2.1142 0.05102 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(CSM_M_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CSM_PropDead_ED ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_CSM_M[d_CSM_M$Supervisor.PI == "Vieira", ]
##
## REML criterion at convergence: -249.1
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.8114 -0.3899 0.1187 0.4494 2.5947
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.027998 0.16733
## Batch (Intercept) 0.005384 0.07337
## Residual 0.018405 0.13566
## Number of obs: 504, groups: Line:Population, 168; Batch, 32
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.717551 0.049687 62.484301 14.441 <2e-16 ***
## PopulationGI 0.005439 0.073751 124.585541 0.074 0.9413
## PopulationKA 0.024691 0.071374 58.264790 0.346 0.7306
## PopulationMA 0.001692 0.072727 46.993656 0.023 0.9815
## PopulationMU 0.154976 0.065589 135.066654 2.363 0.0196 *
## PopulationRE 0.049788 0.078771 40.049612 0.632 0.5309
## PopulationUM -0.037832 0.069683 83.749661 -0.543 0.5886
## PopulationVA 0.067337 0.073429 45.986616 0.917 0.3639
## PopulationYE 0.181045 0.073537 46.164855 2.462 0.0176 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.590
## PopulatinKA -0.693 0.411
## PopulatinMA -0.683 0.403 0.486
## PopulatinMU -0.621 0.416 0.435 0.424
## PopulatinRE -0.631 0.372 0.455 0.431 0.392
## PopulatinUM -0.679 0.425 0.516 0.465 0.473 0.430
## PopulatinVA -0.677 0.399 0.469 0.465 0.420 0.427 0.459
## PopulatinYE -0.676 0.399 0.469 0.478 0.420 0.426 0.459 0.561
intersect_CSM <- Reduce(intersect, list(d_CSM$Line[d_CSM$Supervisor.PI == "Gonzalez"],d_CSM$Line[d_CSM$Supervisor.PI == "Vieira"],d_CSM$Line[d_CSM$Supervisor.PI == "Kozeretska"]))
length(intersect_CSM)
## [1] 126
write(intersect_CSM, file ="ColdShock/CSM_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Mensh Lab : Julian Mensh
Vieira Lab : Jorge Vieira, Cristina P. Vieira, Pedro Duque, Tânia Dias
d_CCRT <- read.csv("MasterSheets_Oct21_git/CCRT_MasterSheet_Oct21.csv")
str(d_CCRT)
## 'data.frame': 2016 obs. of 15 variables:
## $ Supervisor.PI : chr "Vieira" "Vieira" "Vieira" "Vieira" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 4 4 4 4 4 4 4 4 4 4 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Vieira_4_AK1_F_1" "Vieira_4_AK1_F_1" "Vieira_4_AK1_F_1" "Vieira_4_AK1_F_1" ...
## $ Individual : int 1 2 3 4 5 6 1 2 3 4 ...
## $ CCRT_seconds : int 2381 1902 1847 1640 2202 1444 1550 1900 1505 1524 ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_CCRT$Supervisor.PI <- as.factor(d_CCRT$Supervisor.PI)
d_CCRT$Diet <- as.factor(d_CCRT$Diet)
d_CCRT$Batch <- as.factor(d_CCRT$Batch)
d_CCRT$Population_Lat <- factor(d_CCRT$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_CCRT$Population_Lon <- factor(d_CCRT$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_CCRT$Population_Alt <- factor(d_CCRT$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_CCRT$Line <- as.factor(d_CCRT$Line)
d_CCRT$Sex <- as.factor(d_CCRT$Sex)
d_CCRT$ReplicateVial <- as.factor(d_CCRT$ReplicateVial)
d_CCRT$CCRT_seconds <- as.numeric(d_CCRT$CCRT_seconds)
d_CCRT$Censor <- as.numeric(d_CCRT$Censor)
str(d_CCRT)
## 'data.frame': 2016 obs. of 18 variables:
## $ Supervisor.PI : Factor w/ 1 level "Vieira": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "S": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 27 levels "1","2","3","4",..: 4 4 4 4 4 4 4 4 4 4 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 168 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 2 2 2 2 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 336 levels "Vieira_1_UM13_F_1",..: 235 235 235 235 235 235 236 236 236 236 ...
## $ Individual : int 1 2 3 4 5 6 1 2 3 4 ...
## $ CCRT_seconds : num 2381 1902 1847 1640 2202 ...
## $ Censor : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_CCRT_F <-subset(d_CCRT,Sex=='F')
d_CCRT_M <-subset(d_CCRT,Sex=='M')
Descriptive statistics at the line level, with batch information :
table_CCRT_Line_wbatch <- write.csv(d_CCRT %>% group_by(Supervisor.PI, Batch, Sex,Population, Line) %>%
summarise_at(vars(CCRT_seconds),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ChillComa/table_CCRT_Line_wbatch.csv", row.names = T)
table_CCRT_Line_wbatch <- read.csv("ChillComa/table_CCRT_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_CCRT_Line_wobatch <- write.csv(d_CCRT %>% group_by(Supervisor.PI, Sex,Population, Line) %>%
summarise_at(vars(CCRT_seconds),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ChillComa/table_CCRT_Line_wobatch.csv", row.names = T)
table_CCRT_Line_wobatch <- read.csv("ChillComa/table_CCRT_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_CCRT_pop_wbatch <- write.csv(d_CCRT %>% group_by(Supervisor.PI, Batch, Sex,Population) %>%
summarise_at(vars(CCRT_seconds),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ChillComa/table_CCRT_pop_wbatch.csv", row.names = T)
table_CCRT_pop_wbatch <- read.csv("ChillComa/table_CCRT_pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_CCRT_pop_wobatch <- write.csv(d_CCRT %>% group_by(Supervisor.PI, Sex,Population) %>%
summarise_at(vars(CCRT_seconds),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "ChillComa/table_CCRT_pop_wobatch.csv", row.names = T)
table_CCRT_pop_wobatch <- read.csv("ChillComa/table_CCRT_pop_wobatch.csv")
data = filter(d_CCRT_F, (Censor == “0”) | (Supervisor.PI == “Vieira”)))
CCRT_F_lmer_Vieira <- lmer(CCRT_seconds ~ Population + (1|Population:Line) + (1|Batch) +
(1|ReplicateVial:Line),
data = filter(d_CCRT_F, (Censor == "0") | (Supervisor.PI == "Vieira")))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## unable to evaluate scaled gradient
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge: degenerate Hessian with 1 negative eigenvalues
## Warning: Model failed to converge with 1 negative eigenvalue: -2.2e-02
capture.output(summary(CCRT_F_lmer_Vieira),file = "ChillComa/CCRT_F_lmer_Vieira_sum.txt")
capture.output(anova(CCRT_F_lmer_Vieira),file = "ChillComa/CCRT_F_lmer_Vieira.txt")
#capture.output(emmeans(CCRT_F_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "ChillComa/CCRT_F_lmer_Vieira_tk.txt")
anova(CCRT_F_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 5504559 688070 8 41.762 2.8803 0.01198 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(CCRT_F_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CCRT_seconds ~ Population + (1 | Population:Line) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: filter(d_CCRT_F, (Censor == "0") | (Supervisor.PI == "Vieira"))
##
## REML criterion at convergence: 15357.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -1.8597 -0.5558 -0.1721 0.3005 4.3652
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 31626 177.84
## Population:Line (Intercept) 3172 56.32
## Batch (Intercept) 6823 82.60
## Residual 238889 488.76
## Number of obs: 1008, groups:
## ReplicateVial:Line, 168; Population:Line, 168; Batch, 27
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 1654.19 72.03 38.29 22.965 < 2e-16 ***
## PopulationGI -142.88 100.14 158.06 -1.427 0.15561
## PopulationKA -184.35 101.07 40.50 -1.824 0.07554 .
## PopulationMA -329.93 103.70 30.21 -3.181 0.00338 **
## PopulationMU -130.27 105.50 29.24 -1.235 0.22677
## PopulationRE -186.69 99.14 120.73 -1.883 0.06210 .
## PopulationUM 86.73 102.75 43.89 0.844 0.40323
## PopulationVA -237.03 103.06 34.18 -2.300 0.02768 *
## PopulationYE -173.19 101.45 37.45 -1.707 0.09609 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.550
## PopulatinKA -0.712 0.392
## PopulatinMA -0.695 0.382 0.508
## PopulatinMU -0.675 0.403 0.481 0.469
## PopulatinRE -0.646 0.377 0.462 0.449 0.438
## PopulatinUM -0.694 0.389 0.520 0.483 0.481 0.487
## PopulatinVA -0.699 0.384 0.498 0.485 0.472 0.452 0.485
## PopulatinYE -0.710 0.390 0.506 0.493 0.479 0.459 0.493 0.592
## optimizer (nloptwrap) convergence code: 0 (OK)
## unable to evaluate scaled gradient
## Model failed to converge: degenerate Hessian with 1 negative eigenvalues
CCRT_M_lmer_Vieira <- lmer(CCRT_seconds ~ Population + (1|Population:Line) + (1|Batch) +
(1|ReplicateVial:Line), data = filter(d_CCRT_M, (Censor == "0") | (Supervisor.PI == "Vieira")))
## boundary (singular) fit: see ?isSingular
## Warning: Model failed to converge with 1 negative eigenvalue: -2.2e-03
capture.output(summary(CCRT_M_lmer_Vieira),file = "ChillComa/CCRT_M_lmer_Vieira_sum.txt")
capture.output(anova(CCRT_M_lmer_Vieira),file = "ChillComa/CCRT_M_lmer_Vieira.txt")
#capture.output(emmeans(CCRT_M_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "ChillComa/CCRT_M_lmer_Vieira_tk.txt")
anova(CCRT_M_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 7155985 894498 8 159 4.1809 0.0001454 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(CCRT_M_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CCRT_seconds ~ Population + (1 | Population:Line) + (1 | Batch) +
## (1 | ReplicateVial:Line)
## Data: filter(d_CCRT_M, (Censor == "0") | (Supervisor.PI == "Vieira"))
##
## REML criterion at convergence: 15275.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -1.9769 -0.5353 -0.1625 0.2902 4.5807
##
## Random effects:
## Groups Name Variance Std.Dev.
## ReplicateVial:Line (Intercept) 48520.65 220.27
## Population:Line (Intercept) 61.94 7.87
## Batch (Intercept) 0.00 0.00
## Residual 213951.15 462.55
## Number of obs: 1008, groups:
## ReplicateVial:Line, 168; Population:Line, 168; Batch, 27
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 1563.51 64.90 159.00 24.091 < 2e-16 ***
## PopulationGI 281.35 103.40 159.00 2.721 0.00724 **
## PopulationKA -48.44 91.78 159.00 -0.528 0.59838
## PopulationMA -214.19 91.78 159.00 -2.334 0.02086 *
## PopulationMU 130.90 91.78 159.00 1.426 0.15577
## PopulationRE 20.89 97.35 159.00 0.215 0.83039
## PopulationUM 49.11 92.98 159.00 0.528 0.59816
## PopulationVA -24.72 91.78 159.00 -0.269 0.78805
## PopulationYE 169.83 91.78 159.00 1.850 0.06613 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.628
## PopulatinKA -0.707 0.444
## PopulatinMA -0.707 0.444 0.500
## PopulatinMU -0.707 0.444 0.500 0.500
## PopulatinRE -0.667 0.418 0.471 0.471 0.471
## PopulatinUM -0.698 0.438 0.494 0.494 0.494 0.465
## PopulatinVA -0.707 0.444 0.500 0.500 0.500 0.471 0.494
## PopulatinYE -0.707 0.444 0.500 0.500 0.500 0.471 0.494 0.500
## optimizer (nloptwrap) convergence code: 0 (OK)
## boundary (singular) fit: see ?isSingular
NA
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Parsch Lab : Eliza Argyridou, Amanda Glaser-Schmitt, John Parsch
Vieira Lab : Jorge Vieira, Cristina P. Vieira, Pedro Duque, Tânia Dias
d_HSM <- read.csv("MasterSheets_Oct21_git/HSM_MasterSheet_Oct21.csv")
str(d_HSM)
## 'data.frame': 31244 obs. of 15 variables:
## $ Supervisor.PI : chr "Vieira" "Vieira" "Vieira" "Vieira" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 5 5 5 5 5 5 5 5 5 5 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Vieira_5_AK1_F_1" "Vieira_5_AK1_F_1" "Vieira_5_AK1_F_1" "Vieira_5_AK1_F_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ TimeDeath_min : int 240 240 300 300 300 330 360 360 360 390 ...
## $ Censor : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_HSM$Supervisor.PI <- as.factor(d_HSM$Supervisor.PI)
d_HSM$Diet <- as.factor(d_HSM$Diet)
d_HSM$Batch <- as.factor(d_HSM$Batch)
d_HSM$Population_Lat <- factor(d_HSM$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_HSM$Population_Lon <- factor(d_HSM$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_HSM$Population_Alt <- factor(d_HSM$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_HSM$Line <- as.factor(d_HSM$Line)
d_HSM$Sex <- as.factor(d_HSM$Sex)
d_HSM$ReplicateVial <- as.factor(d_HSM$ReplicateVial)
d_HSM$TimeDeath_min <- as.numeric(d_HSM$TimeDeath_min)
d_HSM$Censor <- as.numeric(d_HSM$Censor)
str(d_HSM)
## 'data.frame': 31244 obs. of 18 variables:
## $ Supervisor.PI : Factor w/ 2 levels "Parsch","Vieira": 2 2 2 2 2 2 2 2 2 2 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 32 levels "1","2","3","4",..: 5 5 5 5 5 5 5 5 5 5 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 171 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 1816 levels "Parsch_1_AK1_F_1",..: 1691 1691 1691 1691 1691 1691 1691 1691 1691 1691 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ TimeDeath_min : num 240 240 300 300 300 330 360 360 360 390 ...
## $ Censor : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_HSM_F <-subset(d_HSM,Sex=='F')
d_HSM_M <-subset(d_HSM,Sex=='M')
Descriptive statistics at the line level, with batch information :
table_HSM_Line_wbatch <- write.csv(d_HSM %>% group_by(Supervisor.PI, Batch, Sex,Population, Line) %>%
summarise_at(vars(TimeDeath_min),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "HeatShock/table_HSM_Line_wbatch.csv", row.names = T)
table_HSM_Line_wbatch <- read.csv("HeatShock/table_HSM_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_HSM_Line_wobatch <- write.csv(d_HSM %>% group_by(Supervisor.PI, Sex,Population, Line) %>%
summarise_at(vars(TimeDeath_min),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "HeatShock/table_HSM_Line_wobatch.csv", row.names = T)
table_HSM_Line_wobatch <- read.csv("HeatShock/table_HSM_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_HSM_Pop_wbatch <- write.csv(d_HSM %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(TimeDeath_min),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "HeatShock/table_HSM_Pop_wbatch.csv", row.names = T)
table_HSM_Pop_wbatch <- read.csv("HeatShock/table_HSM_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_HSM_Pop_wobatch <- write.csv(d_HSM %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(TimeDeath_min),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "HeatShock/table_HSM_Pop_wobatch.csv", row.names = T)
table_HSM_Pop_wobatch <- read.csv("HeatShock/table_HSM_Pop_wobatch.csv")
HSM_F_lmer_Parsch <- lmer(TimeDeath_min ~ Population + (1| Line : Population) +
(1|Batch), data = d_HSM_F[d_HSM_F$Supervisor.PI == "Parsch",])
capture.output(summary(HSM_F_lmer_Parsch),file = "HeatShock/HSM_F_lmer_sum_Parsch.txt")
capture.output(anova(HSM_F_lmer_Parsch),file = "HeatShock/HSM_F_lmer_Parsch.txt")
#capture.output(emmeans(HSM_F_lmer_Parsch, list(pairwise ~ Population), adjust = "tukey"),file = "HeatShock/HSM_F_lmer_Parsch_tk.txt")
anova(HSM_F_lmer_Parsch)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 315432 39429 8 134.65 8.2215 5.043e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(HSM_F_lmer_Parsch)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: TimeDeath_min ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_HSM_F[d_HSM_F$Supervisor.PI == "Parsch", ]
##
## REML criterion at convergence: 68742.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -6.2691 -0.4074 0.1719 0.5104 3.2162
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 3763 61.34
## Batch (Intercept) 4942 70.30
## Residual 4796 69.25
## Number of obs: 6036, groups: Line:Population, 135; Batch, 9
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 450.61 28.56 16.75 15.780 1.75e-11 ***
## PopulationGI -86.00 22.96 131.11 -3.746 0.000268 ***
## PopulationKA -36.36 22.84 128.43 -1.592 0.113915
## PopulationMA 10.56 22.76 126.68 0.464 0.643428
## PopulationMU -29.47 22.76 126.64 -1.295 0.197801
## PopulationRE -111.79 23.39 140.30 -4.780 4.38e-06 ***
## PopulationUM -13.18 23.79 149.55 -0.554 0.580244
## PopulationVA -19.30 23.79 149.56 -0.811 0.418582
## PopulationYE -109.44 23.13 134.57 -4.732 5.55e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.400
## PopulatinKA -0.400 0.505
## PopulatinMA -0.398 0.491 0.496
## PopulatinMU -0.398 0.491 0.496 0.502
## PopulatinRE -0.408 0.490 0.490 0.487 0.487
## PopulatinUM -0.407 0.484 0.484 0.478 0.478 0.534
## PopulatinVA -0.407 0.484 0.484 0.478 0.478 0.534 0.544
## PopulatinYE -0.409 0.497 0.496 0.490 0.490 0.519 0.522 0.522
HSM_M_lmer_Parsch <- lmer(TimeDeath_min ~ Population + (1| Line : Population) +
(1|Batch), data = d_HSM_M[d_HSM_M$Supervisor.PI == "Parsch",])
capture.output(summary(HSM_M_lmer_Parsch),file = "HeatShock/HSM_M_lmer_sum_Parsch.txt")
capture.output(anova(HSM_M_lmer_Parsch),file = "HeatShock/HSM_M_lmer_Parsch.txt")
#capture.output(emmeans(HSM_M_lmer_Parsch, list(pairwise ~ Population), adjust = "tukey"),file = "HeatShock/HSM_M_lmer_Parsch_tk.txt")
anova(HSM_M_lmer_Parsch)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 299204 37400 8 132.61 7.3383 4.743e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(HSM_M_lmer_Parsch)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: TimeDeath_min ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_HSM_M[d_HSM_M$Supervisor.PI == "Parsch", ]
##
## REML criterion at convergence: 69116.8
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -5.2370 -0.6649 0.0844 0.6704 3.5502
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 5767 75.94
## Batch (Intercept) 3532 59.43
## Residual 5097 71.39
## Number of obs: 6033, groups: Line:Population, 135; Batch, 9
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 399.94978 28.16624 29.16362 14.200 1.24e-14 ***
## PopulationGI -99.79578 28.21291 129.63942 -3.537 0.000562 ***
## PopulationKA -37.03040 28.11191 127.80147 -1.317 0.190112
## PopulationMA 0.02412 28.04135 126.52903 0.001 0.999315
## PopulationMU -41.52879 28.04107 126.52398 -1.481 0.141093
## PopulationRE -133.38181 28.58950 136.28816 -4.665 7.27e-06 ***
## PopulationUM -13.68142 28.94179 142.83549 -0.473 0.637133
## PopulationVA -31.09782 28.94196 142.83884 -1.074 0.284415
## PopulationYE -135.08845 28.36039 132.18537 -4.763 4.94e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.499
## PopulatinKA -0.499 0.504
## PopulatinMA -0.497 0.494 0.498
## PopulatinMU -0.497 0.494 0.498 0.501
## PopulatinRE -0.506 0.492 0.493 0.491 0.491
## PopulatinUM -0.505 0.489 0.488 0.484 0.484 0.525
## PopulatinVA -0.505 0.489 0.488 0.484 0.484 0.525 0.532
## PopulatinYE -0.507 0.498 0.497 0.493 0.493 0.514 0.516 0.516
HSM_F_lmer_Vieira <- lmer(TimeDeath_min ~ Population + (1| Line : Population) +
(1|Batch), data = d_HSM_F[d_HSM_F$Supervisor.PI == "Vieira",])
capture.output(summary(HSM_F_lmer_Vieira),file = "HeatShock/HSM_F_lmer_sum_Vieira.txt")
capture.output(anova(HSM_F_lmer_Vieira),file = "HeatShock/HSM_F_lmer_Vieira.txt")
#capture.output(emmeans(HSM_F_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "HeatShock/HSM_F_lmer_Vieira_tk.txt")
anova(HSM_F_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 158491 19811 8 44.122 8.8172 4.148e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(HSM_F_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: TimeDeath_min ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_HSM_F[d_HSM_F$Supervisor.PI == "Vieira", ]
##
## REML criterion at convergence: 101672.8
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -7.8671 -0.3443 0.2083 0.5002 2.6843
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 567.82 23.83
## Batch (Intercept) 92.73 9.63
## Residual 2246.89 47.40
## Number of obs: 9593, groups: Line:Population, 168; Batch, 32
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 391.098 6.600 54.665 59.261 < 2e-16 ***
## PopulationGI -41.484 9.815 117.966 -4.226 4.70e-05 ***
## PopulationKA 6.309 9.480 50.582 0.665 0.509
## PopulationMA 9.195 9.650 40.251 0.953 0.346
## PopulationMU -46.769 8.731 129.475 -5.356 3.75e-07 ***
## PopulationRE 12.618 10.451 34.036 1.207 0.236
## PopulationUM -3.187 9.260 74.779 -0.344 0.732
## PopulationVA -16.190 9.742 39.291 -1.662 0.105
## PopulationYE -7.465 9.754 39.367 -0.765 0.449
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.591
## PopulatinKA -0.693 0.412
## PopulatinMA -0.684 0.404 0.486
## PopulatinMU -0.623 0.416 0.436 0.426
## PopulatinRE -0.631 0.373 0.455 0.432 0.393
## PopulatinUM -0.679 0.425 0.515 0.466 0.473 0.430
## PopulatinVA -0.677 0.401 0.470 0.466 0.422 0.428 0.460
## PopulatinYE -0.677 0.400 0.470 0.478 0.421 0.427 0.460 0.559
HSM_M_lmer_Vieira <- lmer(TimeDeath_min ~ Population + (1| Line : Population) +
(1|Batch), data = d_HSM_M[d_HSM_M$Supervisor.PI == "Vieira",])
capture.output(summary(HSM_M_lmer_Vieira),file = "HeatShock/HSM_M_lmer_sum_Vieira.txt")
capture.output(anova(HSM_M_lmer_Vieira),file = "HeatShock/HSM_M_lmer_Vieira.txt")
#capture.output(emmeans(HSM_M_lmer_Vieira, list(pairwise ~ Population), adjust = "tukey"),file = "HeatShock/HSM_M_lmer_Vieira_tk.txt")
anova(HSM_M_lmer_Vieira)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 91213 11402 8 52.581 3.761 0.001508 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(HSM_M_lmer_Vieira)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: TimeDeath_min ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: d_HSM_M[d_HSM_M$Supervisor.PI == "Vieira", ]
##
## REML criterion at convergence: 104503.8
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -6.4766 -0.6125 0.0630 0.6534 2.7719
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 1249.3 35.35
## Batch (Intercept) 325.6 18.04
## Residual 3031.6 55.06
## Number of obs: 9582, groups: Line:Population, 168; Batch, 32
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 355.70 10.42 59.82 34.130 < 2e-16 ***
## PopulationGI -75.57 14.98 131.33 -5.045 1.48e-06 ***
## PopulationKA -20.24 15.00 59.26 -1.350 0.182300
## PopulationMA -30.94 15.44 45.65 -2.003 0.051086 .
## PopulationMU -45.92 13.25 146.15 -3.466 0.000693 ***
## PopulationRE -26.47 16.86 38.82 -1.570 0.124545
## PopulationUM -37.66 14.41 88.78 -2.613 0.010530 *
## PopulationVA -30.89 15.60 44.92 -1.980 0.053883 .
## PopulationYE -24.60 15.62 46.28 -1.575 0.121983
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.572
## PopulatinKA -0.689 0.398
## PopulatinMA -0.675 0.386 0.484
## PopulatinMU -0.592 0.407 0.416 0.400
## PopulatinRE -0.618 0.353 0.453 0.418 0.366
## PopulatinUM -0.670 0.417 0.524 0.454 0.467 0.417
## PopulatinVA -0.668 0.382 0.460 0.457 0.395 0.413 0.447
## PopulatinYE -0.667 0.382 0.460 0.475 0.395 0.412 0.447 0.591
intersect_HSM <- Reduce(intersect, list(d_HSM$Line[d_HSM$Supervisor.PI == "Parsch"],
d_HSM$Line[d_HSM$Supervisor.PI == "Vieira"]))
length(intersect_HSM)
## [1] 132
write(intersect_HSM, file ="HeatShock/HSM_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Bergland Lab : Liam Miller, Alan Bergland, Priscilla Erickson
Flatt Lab : Esra Durmaz, Envel Kerdaffrec, Thibault Schowing, Virginie Thieu, Marisa Rodrigues, Thomas Flatt
Schlotterer Lab : Manolis Lyrakis, Christian Schlötterer
d_Dia <- read.csv("MasterSheets_Oct21_git/DIA_MasterSheet_Oct21.csv")
str(d_Dia)
## 'data.frame': 8206 obs. of 12 variables:
## $ Supervisor.PI : chr "Bergland" "Bergland" "Bergland" "Bergland" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 3 3 3 3 3 3 3 3 3 3 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ MostAdvancedStage: int 9 7 10 8 8 8 8 9 9 8 ...
## $ NumberOfEggs : int 1 0 3 0 1 3 0 4 3 1 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_Dia$Supervisor.PI <- as.factor(d_Dia$Supervisor.PI)
d_Dia$Diet <- as.factor(d_Dia$Diet)
d_Dia$Batch <- as.factor(d_Dia$Batch)
d_Dia$Population_Lat <- factor(d_Dia$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Dia$Population_Lon <- factor(d_Dia$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Dia$Population_Alt <- factor(d_Dia$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Dia$Line <- as.factor(d_Dia$Line)
d_Dia$MostAdvancedStage <- as.numeric(d_Dia$MostAdvancedStage)
d_Dia$NumberOfEggs <- as.numeric(d_Dia$NumberOfEggs)
str(d_Dia)
## 'data.frame': 8206 obs. of 15 variables:
## $ Supervisor.PI : Factor w/ 3 levels "Bergland","Flatt",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 3 levels "1","2","3": 3 3 3 3 3 3 3 3 3 3 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 168 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ MostAdvancedStage: num 9 7 10 8 8 8 8 9 9 8 ...
## $ NumberOfEggs : num 1 0 3 0 1 3 0 4 3 1 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
Descriptive statistics at the line level, with batch information :
Descriptive statistics at the line level, without batch information :
Descriptive statistics at the population level, with batch information :
Descriptive statistics at the population level, without batch information :
intersect_Dia <- Reduce(intersect, list(d_Dia$Line[d_Dia$Supervisor.PI == "Flatt"],d_Dia$Line[d_Dia$Supervisor.PI == "Bergland"],d_Dia$Line[d_Dia$Supervisor.PI == "Schlotterer"]))
length(intersect_Dia)
## [1] 146
write(intersect_Dia, file ="Diapause/Dia_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
#Note that the trait has been phenotyped as mixed sex.
Contributors:
Wegener Lab : Susanne Klühspies, Christian Wegener
d_CET <- read.csv("MasterSheets_Oct21_git/CET_MasterSheet_Dec21.csv")
str(d_CET)
## 'data.frame': 36 obs. of 16 variables:
## $ Supervisor.PI : chr "Wegener" "Wegener" "Wegener" "Wegener" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ total...of.flies : int 1897 793 1938 1355 2349 1418 1178 1544 2150 1236 ...
## $ Batch : int 2 2 2 2 3 2 1 2 3 2 ...
## $ Population : chr "AK" "GI" "KA" "MA" ...
## $ Line : chr "mixed population" "mixed population" "mixed population" "mixed population" ...
## $ Sex : chr "mixed sex" "mixed sex" "mixed sex" "mixed sex" ...
## $ ReplicateVial : logi NA NA NA NA NA NA ...
## $ Individual : logi NA NA NA NA NA NA ...
## $ Condition : chr "18_LD_DD" "18_LD_DD" "18_LD_DD" "18_LD_DD" ...
## $ CET_hours_MESA : num 13.2 10.5 14 16.8 10.5 ...
## $ CET_hours_LSPR : num 12.5 10.5 11.7 17.5 11 ...
## $ Period_MESA : num 24.2 24.8 24.1 23.3 24.9 ...
## $ Period_LSPR : num 24.4 24.8 24.8 23.1 24.7 ...
## $ Rhythmicity_LSPR_amplitude : num 11.66 6.55 9.75 7.47 16.88 ...
## $ Rhythmicity_JTK_p_BH_corrected: num 5.26e-24 6.27e-22 6.76e-14 2.92e-09 4.21e-24 ...
d_CET$Supervisor.PI <- as.factor(d_CET$Supervisor.PI)
d_CET$Diet <- as.factor(d_CET$Diet)
d_CET$Batch <- as.factor(d_CET$Batch)
d_CET$Population_Lat <- factor(d_CET$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_CET$Population_Lon <- factor(d_CET$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_CET$Population_Alt <- factor(d_CET$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_CET$Condition <- as.factor(d_CET$Condition)
d_CET$CET_hours_MESA <- as.numeric(d_CET$CET_hours_MESA)
d_CET$CET_hours_LSPR <- as.numeric(d_CET$CET_hours_LSPR)
d_CET$Period_MESA <- as.numeric(d_CET$Period_MESA)
d_CET$Period_LSPR <- as.numeric(d_CET$Period_LSPR)
d_CET$Rhythmicity_LSPR_amplitude <- as.numeric(d_CET$Rhythmicity_LSPR_amplitude)
d_CET$Rhythmicity_JTK_p_BH_corrected <- as.numeric(d_CET$Rhythmicity_JTK_p_BH_corrected)
str(d_CET)
## 'data.frame': 36 obs. of 19 variables:
## $ Supervisor.PI : Factor w/ 1 level "Wegener": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ total...of.flies : int 1897 793 1938 1355 2349 1418 1178 1544 2150 1236 ...
## $ Batch : Factor w/ 4 levels "1","2","3","4": 2 2 2 2 3 2 1 2 3 2 ...
## $ Population : chr "AK" "GI" "KA" "MA" ...
## $ Line : chr "mixed population" "mixed population" "mixed population" "mixed population" ...
## $ Sex : chr "mixed sex" "mixed sex" "mixed sex" "mixed sex" ...
## $ ReplicateVial : logi NA NA NA NA NA NA ...
## $ Individual : logi NA NA NA NA NA NA ...
## $ Condition : Factor w/ 4 levels "18_LD_DD","18_LD_LD",..: 1 1 1 1 1 1 1 1 1 2 ...
## $ CET_hours_MESA : num 13.2 10.5 14 16.8 10.5 ...
## $ CET_hours_LSPR : num 12.5 10.5 11.7 17.5 11 ...
## $ Period_MESA : num 24.2 24.8 24.1 23.3 24.9 ...
## $ Period_LSPR : num 24.4 24.8 24.8 23.1 24.7 ...
## $ Rhythmicity_LSPR_amplitude : num 11.66 6.55 9.75 7.47 16.88 ...
## $ Rhythmicity_JTK_p_BH_corrected: num 5.26e-24 6.27e-22 6.76e-14 2.92e-09 4.21e-24 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 3 7 5 4 2 6 8 1 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 2 3 5 4 1 7 9 8 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 3 1 8 7 4 5 6 9 2 ...
d_CET_18_LD_DD <-subset(d_CET,Condition=='18_LD_DD')
d_CET_18_LD_LD <-subset(d_CET,Condition=='18_LD_LD')
d_CET_29_LD_DD <-subset(d_CET,Condition=='29_LD_DD')
d_CET_29_LD_LD <-subset(d_CET,Condition=='29_LD_LD')
Descriptive statistics for CET_hours_MESA :
table_CET_18LDDD_CET_MESA <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_CET_MESA.csv", row.names = T)
table_CET_18LDDD_CET_MESA <- read.csv("CircadianEclosion/table_CET_18LDDD_CET_MESA.csv")
DT::datatable(table_CET_18LDDD_CET_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_LSPR :
table_CET_18LDDD_CET_LSPR <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_CET_LSPR.csv", row.names = T)
table_CET_18LDDD_CET_LSPR <- read.csv("CircadianEclosion/table_CET_18LDDD_CET_LSPR.csv")
DT::datatable(table_CET_18LDDD_CET_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_MESA :
table_CET_18LDDD_Period_MESA <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_Period_MESA.csv", row.names = T)
table_CET_18LDDD_Period_MESA <- read.csv("CircadianEclosion/table_CET_18LDDD_Period_MESA.csv")
DT::datatable(table_CET_18LDDD_Period_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_LSPR :
table_CET_18LDDD_Period_LSPR <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_Period_LSPR.csv", row.names = T)
table_CET_18LDDD_Period_LSPR <- read.csv("CircadianEclosion/table_CET_18LDDD_Period_LSPR.csv")
DT::datatable(table_CET_18LDDD_Period_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_LSPR_amplitude :
table_CET_18LDDD_Rhy_LSPR <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_LSPR_amplitude),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_Rhy_LSPR.csv", row.names = T)
table_CET_18LDDD_Rhy_LSPR <- read.csv("CircadianEclosion/table_CET_18LDDD_Rhy_LSPR.csv")
DT::datatable(table_CET_18LDDD_Rhy_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_JTK_p_BH_corrected :
table_CET_18LDDD_Rhy_JTK <- write.csv(d_CET_18_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_JTK_p_BH_corrected),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDDD_Rhy_JTK.csv", row.names = T)
table_CET_18LDDD_Rhy_JTK <- read.csv("CircadianEclosion/table_CET_18LDDD_Rhy_JTK.csv")
DT::datatable(table_CET_18LDDD_Rhy_JTK, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_MESA :
table_CET_18LDLD_CET_MESA <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_CET_MESA.csv", row.names = T)
table_CET_18LDLD_CET_MESA <- read.csv("CircadianEclosion/table_CET_18LDLD_CET_MESA.csv")
DT::datatable(table_CET_18LDLD_CET_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_LSPR :
table_CET_18LDLD_CET_LSPR <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_CET_LSPR.csv", row.names = T)
table_CET_18LDLD_CET_LSPR <- read.csv("CircadianEclosion/table_CET_18LDLD_CET_LSPR.csv")
DT::datatable(table_CET_18LDLD_CET_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_MESA :
table_CET_18LDLD_Period_MESA <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_Period_MESA.csv", row.names = T)
table_CET_18LDLD_Period_MESA <- read.csv("CircadianEclosion/table_CET_18LDLD_Period_MESA.csv")
DT::datatable(table_CET_18LDLD_Period_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_LSPR :
table_CET_18LDLD_Period_LSPR <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_Period_LSPR.csv", row.names = T)
table_CET_18LDLD_Period_LSPR <- read.csv("CircadianEclosion/table_CET_18LDLD_Period_LSPR.csv")
DT::datatable(table_CET_18LDLD_Period_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_LSPR_amplitude :
table_CET_18LDLD_Rhy_LSPR <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_LSPR_amplitude),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_Rhy_LSPR.csv", row.names = T)
table_CET_18LDLD_Rhy_LSPR <- read.csv("CircadianEclosion/table_CET_18LDLD_Rhy_LSPR.csv")
DT::datatable(table_CET_18LDLD_Rhy_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_JTK_p_BH_corrected :
table_CET_18LDLD_Rhy_JTK <- write.csv(d_CET_18_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_JTK_p_BH_corrected),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_18LDLD_Rhy_JTK.csv", row.names = T)
table_CET_18LDLD_Rhy_JTK <- read.csv("CircadianEclosion/table_CET_18LDLD_Rhy_JTK.csv")
DT::datatable(table_CET_18LDLD_Rhy_JTK, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_MESA :
table_CET_29LDDD_CET_MESA <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_CET_MESA.csv", row.names = T)
table_CET_29LDDD_CET_MESA <- read.csv("CircadianEclosion/table_CET_29LDDD_CET_MESA.csv")
DT::datatable(table_CET_29LDDD_CET_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_LSPR :
table_CET_29LDDD_CET_LSPR <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_CET_LSPR.csv", row.names = T)
table_CET_29LDDD_CET_LSPR <- read.csv("CircadianEclosion/table_CET_29LDDD_CET_LSPR.csv")
DT::datatable(table_CET_29LDDD_CET_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_MESA :
table_CET_29LDDD_Period_MESA <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_Period_MESA.csv", row.names = T)
table_CET_29LDDD_Period_MESA <- read.csv("CircadianEclosion/table_CET_29LDDD_Period_MESA.csv")
DT::datatable(table_CET_29LDDD_Period_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_LSPR :
table_CET_29LDDD_Period_LSPR <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_Period_LSPR.csv", row.names = T)
table_CET_29LDDD_Period_LSPR <- read.csv("CircadianEclosion/table_CET_29LDDD_Period_LSPR.csv")
DT::datatable(table_CET_29LDDD_Period_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_LSPR_amplitude :
table_CET_29LDDD_Rhy_LSPR <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_LSPR_amplitude),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_Rhy_LSPR.csv", row.names = T)
table_CET_29LDDD_Rhy_LSPR <- read.csv("CircadianEclosion/table_CET_29LDDD_Rhy_LSPR.csv")
DT::datatable(table_CET_29LDDD_Rhy_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_JTK_p_BH_corrected :
table_CET_29LDDD_Rhy_JTK <- write.csv(d_CET_29_LD_DD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_JTK_p_BH_corrected),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDDD_Rhy_JTK.csv", row.names = T)
table_CET_29LDDD_Rhy_JTK <- read.csv("CircadianEclosion/table_CET_29LDDD_Rhy_JTK.csv")
DT::datatable(table_CET_29LDDD_Rhy_JTK, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_MESA :
table_CET_29LDLD_CET_MESA <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_CET_MESA.csv", row.names = T)
table_CET_29LDLD_CET_MESA <- read.csv("CircadianEclosion/table_CET_29LDLD_CET_MESA.csv")
DT::datatable(table_CET_29LDLD_CET_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for CET_hours_LSPR :
table_CET_29LDLD_CET_LSPR <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(CET_hours_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_CET_LSPR.csv", row.names = T)
table_CET_29LDLD_CET_LSPR <- read.csv("CircadianEclosion/table_CET_29LDLD_CET_LSPR.csv")
DT::datatable(table_CET_29LDLD_CET_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_MESA :
table_CET_29LDLD_Period_MESA <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_MESA),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_Period_MESA.csv", row.names = T)
table_CET_29LDLD_Period_MESA <- read.csv("CircadianEclosion/table_CET_29LDLD_Period_MESA.csv")
DT::datatable(table_CET_29LDLD_Period_MESA, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Period_LSPR :
table_CET_29LDLD_Period_LSPR <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Period_LSPR),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_Period_LSPR.csv", row.names = T)
table_CET_29LDLD_Period_LSPR <- read.csv("CircadianEclosion/table_CET_29LDLD_Period_LSPR.csv")
DT::datatable(table_CET_29LDLD_Period_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_LSPR_amplitude :
table_CET_29LDLD_Rhy_LSPR <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_LSPR_amplitude),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_Rhy_LSPR.csv", row.names = T)
table_CET_29LDLD_Rhy_LSPR <- read.csv("CircadianEclosion/table_CET_29LDLD_Rhy_LSPR.csv")
DT::datatable(table_CET_29LDLD_Rhy_LSPR, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
Descriptive statistics for Rhythmicity_JTK_p_BH_corrected :
table_CET_29LDLD_Rhy_JTK <- write.csv(d_CET_29_LD_LD %>% group_by(Supervisor.PI, Condition, Population) %>%
summarise_at(vars(Rhythmicity_JTK_p_BH_corrected),
list(Mean = mean)),
file = "CircadianEclosion/table_CET_29LDLD_Rhy_JTK.csv", row.names = T)
table_CET_29LDLD_Rhy_JTK <- read.csv("CircadianEclosion/table_CET_29LDLD_Rhy_JTK.csv")
DT::datatable(table_CET_29LDLD_Rhy_JTK, options = list(pageLength = 10)) %>% formatRound(5:5, 3)
From Chris :
knitr::include_graphics("CircadianEclosion/FromChris/Graphs_plate_MESA.png")
From Eran :
knitr::include_graphics("CircadianEclosion/FromEran/eclosion_data_Christian_Page_1.png")
knitr::include_graphics("CircadianEclosion/FromEran/eclosion_data_Christian_Page_2.png")
For a detailed description of tables, plots, linear models and outputs, please refer here
#Note that the trait has been phenotyped only in males.
Contributors:
Tauber Lab : Bettina Fishman, Eran Tauber
d_LA <- read.csv("MasterSheets_Oct21_git/LA_MasterSheet_Oct21.csv")
str(d_LA)
## 'data.frame': 639 obs. of 19 variables:
## $ Supervisor.PI : chr "Tauber" "Tauber" "Tauber" "Tauber" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "YE" "YE" "YE" "YE" ...
## $ Line : chr "YE27" "YE33" "YE40" "YE40" ...
## $ Data.Label : chr "YE 29-9-18" "YE 33-9-18" "YE 40-9-18" "YE 40-9-18" ...
## $ Sex : chr "M" "M" "M" "M" ...
## $ ReplicateChamberOld: int 3 3 3 3 3 3 3 3 3 3 ...
## $ ReplicateChamber : chr "Tauber_1_YE27_M_3" "Tauber_1_YE33_M_3" "Tauber_1_YE40_M_3" "Tauber_1_YE40_M_3" ...
## $ Period : num 23.6 20.2 24 24.2 23.1 ...
## $ CircPhase : num 23.21 13.07 4.59 9.32 12.98 ...
## $ AbsPhase : num 12.5 0.7 11.7 12.5 12.5 12 12.7 0.5 12.4 12.6 ...
## $ Experiment : int 1 1 1 1 1 1 1 1 1 1 ...
## $ ND : num 0.678 0.95 1.083 0.948 1.455 ...
## $ Activity : num 29.2 46.8 45.4 37.8 37.8 31.8 43.6 42.8 29.6 21.6 ...
## $ Country : chr "Turkey" "Turkey" "Turkey" "Turkey" ...
## $ Latitude : num 40.2 40.2 40.2 40.2 40.2 ...
## $ Longitude : num 32.3 32.3 32.3 32.3 32.3 ...
## $ Altitude : int 680 680 680 680 680 680 680 680 680 680 ...
d_LA$Supervisor.PI <- as.factor(d_LA$Supervisor.PI)
d_LA$Diet <- as.factor(d_LA$Diet)
d_LA$Batch <- as.factor(d_LA$Batch)
d_LA$Population_Lat <- factor(d_LA$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_LA$Population_Lon <- factor(d_LA$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_LA$Population_Alt <- factor(d_LA$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_LA$Line <- as.factor(d_LA$Line)
d_LA$ReplicateChamber <- as.factor(d_LA$ReplicateChamber)
d_LA$Period <- as.numeric(d_LA$Period)
d_LA$CircPhase <- as.numeric(d_LA$CircPhase)
d_LA$AbsPhase <- as.numeric(d_LA$AbsPhase)
d_LA$Experiment <- as.numeric(d_LA$Experiment)
d_LA$ND <- as.numeric(d_LA$ND)
d_LA$Activity <- as.numeric(d_LA$Activity)
str(d_LA)
## 'data.frame': 639 obs. of 22 variables:
## $ Supervisor.PI : Factor w/ 1 level "Tauber": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "YE" "YE" "YE" "YE" ...
## $ Line : Factor w/ 92 levels "AK1","AK2","AK3",..: 84 85 86 86 86 89 90 90 91 91 ...
## $ Data.Label : chr "YE 29-9-18" "YE 33-9-18" "YE 40-9-18" "YE 40-9-18" ...
## $ Sex : chr "M" "M" "M" "M" ...
## $ ReplicateChamberOld: int 3 3 3 3 3 3 3 3 3 3 ...
## $ ReplicateChamber : Factor w/ 152 levels "Tauber_1_AK1_M_9",..: 76 77 78 78 78 79 80 80 81 81 ...
## $ Period : num 23.6 20.2 24 24.2 23.1 ...
## $ CircPhase : num 23.21 13.07 4.59 9.32 12.98 ...
## $ AbsPhase : num 12.5 0.7 11.7 12.5 12.5 12 12.7 0.5 12.4 12.6 ...
## $ Experiment : num 1 1 1 1 1 1 1 1 1 1 ...
## $ ND : num 0.678 0.95 1.083 0.948 1.455 ...
## $ Activity : num 29.2 46.8 45.4 37.8 37.8 31.8 43.6 42.8 29.6 21.6 ...
## $ Country : chr "Turkey" "Turkey" "Turkey" "Turkey" ...
## $ Latitude : num 40.2 40.2 40.2 40.2 40.2 ...
## $ Longitude : num 32.3 32.3 32.3 32.3 32.3 ...
## $ Altitude : int 680 680 680 680 680 680 680 680 680 680 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 8 8 8 8 8 8 8 8 8 8 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
Descriptive statistics at the line level, with batch information :
table_LA_Act_Line_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population, Line) %>%
summarise_at(vars(Activity),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_Act_Line_wbatch.csv", row.names = T)
table_LA_Act_Line_wbatch <- read.csv("Locomotor/table_LA_Act_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_LA_Act_Line_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population, Line) %>%
summarise_at(vars(Activity),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_Act_Line_wobatch.csv", row.names = T)
table_LA_Act_Line_wobatch <- read.csv("Locomotor/table_LA_Act_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_LA_Act_Pop_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(Activity),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_Act_Pop_wbatch.csv", row.names = T)
table_LA_Act_Pop_wbatch <- read.csv("Locomotor/table_LA_Act_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_LA_Act_Pop_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(Activity),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_Act_Pop_wobatch.csv", row.names = T)
table_LA_Act_Pop_wobatch <- read.csv("Locomotor/table_LA_Act_Pop_wobatch.csv")
Descriptive statistics at the line level, with batch information :
table_LA_ND_Line_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population, Line) %>%
summarise_at(vars(ND),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_ND_Line_wbatch.csv", row.names = T)
table_LA_ND_Line_wbatch <- read.csv("Locomotor/table_LA_ND_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_LA_ND_Line_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population, Line) %>%
summarise_at(vars(ND),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_ND_Line_wobatch.csv", row.names = T)
table_LA_ND_Line_wobatch <- read.csv("Locomotor/table_LA_ND_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_LA_ND_Pop_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(ND),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_ND_Pop_wbatch.csv", row.names = T)
table_LA_ND_Pop_wbatch <- read.csv("Locomotor/table_LA_ND_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_LA_ND_Pop_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(ND),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_ND_Pop_wobatch.csv", row.names = T)
table_LA_ND_Pop_wobatch <- read.csv("Locomotor/table_LA_ND_Pop_wobatch.csv")
Descriptive statistics at the line level, with batch information :
table_LA_CircPhase_Line_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population, Line) %>%
summarise_at(vars(CircPhase),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_CircPhase_Line_wbatch.csv", row.names = T)
table_LA_CircPhase_Line_wbatch <- read.csv("Locomotor/table_LA_CircPhase_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_LA_CircPhase_Line_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population, Line) %>%
summarise_at(vars(CircPhase),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_CircPhase_Line_wobatch.csv", row.names = T)
table_LA_CircPhase_Line_wobatch <- read.csv("Locomotor/table_LA_CircPhase_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_LA_CircPhase_Pop_wbatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(CircPhase),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_CircPhase_Pop_wbatch.csv", row.names = T)
table_LA_CircPhase_Pop_wbatch <- read.csv("Locomotor/table_LA_CircPhase_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_LA_CircPhase_Pop_wobatch <- write.csv(d_LA %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(CircPhase),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Locomotor/table_LA_CircPhase_Pop_wobatch.csv", row.names = T)
table_LA_CircPhase_Pop_wobatch <- read.csv("Locomotor/table_LA_CircPhase_Pop_wobatch.csv")
ND
LA_lmer_ND_Tauber <- lmer(ND ~ Population + (1|Line:Population) +
(1|Batch), data = (d_LA))
## Warning in checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
## Model failed to converge with max|grad| = 0.00214269 (tol = 0.002, component 1)
capture.output(summary(LA_lmer_ND_Tauber),file = "Locomotor/LA_lmer_ND_Tauber.txt")
capture.output(anova(LA_lmer_ND_Tauber),file = "Locomotor/LA_lmer_ND_Tauber.txt")
#capture.output(emmeans(LA_lmer_ND_Tauber, list(pairwise ~ Population), adjust = "tukey"),file = "Locomotor/LA_lmer_ND_Tauber_tk.txt")
anova(LA_lmer_ND_Tauber)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 1.8666 0.23332 8 74.993 1.5771 0.1461
summary(LA_lmer_ND_Tauber)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: ND ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: (d_LA)
##
## REML criterion at convergence: 703.3
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.1922 -0.4257 -0.0668 0.2481 11.4146
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 3.972e-02 0.1993100
## Batch (Intercept) 1.608e-09 0.0000401
## Residual 1.479e-01 0.3846341
## Number of obs: 639, groups: Line:Population, 92; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 0.86109 0.08409 63.09959 10.240 4.83e-15 ***
## PopulationGI -0.00947 0.12019 69.05962 -0.079 0.9374
## PopulationKA 0.16250 0.11441 64.97528 1.420 0.1603
## PopulationMA 0.09686 0.11425 65.05487 0.848 0.3997
## PopulationMU 0.00468 0.12120 77.61572 0.039 0.9693
## PopulationRE 0.01998 0.12567 74.00461 0.159 0.8741
## PopulationUM -0.05699 0.11757 66.31573 -0.485 0.6295
## PopulationVA 0.04927 0.11799 64.71625 0.418 0.6777
## PopulationYE 0.22780 0.10520 73.45997 2.165 0.0336 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.700
## PopulatinKA -0.735 0.514
## PopulatinMA -0.736 0.515 0.541
## PopulatinMU -0.694 0.485 0.510 0.511
## PopulatinRE -0.669 0.468 0.492 0.493 0.464
## PopulatinUM -0.715 0.500 0.526 0.526 0.496 0.479
## PopulatinVA -0.713 0.499 0.524 0.525 0.494 0.477 0.510
## PopulatinYE -0.799 0.559 0.587 0.588 0.555 0.535 0.572 0.570
## optimizer (nloptwrap) convergence code: 0 (OK)
## Model failed to converge with max|grad| = 0.00214269 (tol = 0.002, component 1)
CircPhase
LA_lmer_CircPhase_Tauber <- lmer(CircPhase ~ Population + (1|Line:Population) +
(1|Batch) , data = (d_LA))
capture.output(summary(LA_lmer_CircPhase_Tauber),file = "Locomotor/LA_lmer_CircPhase_Tauber.txt")
capture.output(anova(LA_lmer_CircPhase_Tauber),file = "Locomotor/LA_lmer_CircPhase_Tauber.txt")
#capture.output(emmeans(LA_lmer_CircPhase_Tauber, list(pairwise ~ Population), adjust = "tukey"),file = "Locomotor/LA_lmer_CircPhase_Tauber_tk.txt")
anova(LA_lmer_CircPhase_Tauber)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 1267.7 158.47 8 57.85 3.4025 0.002873 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(LA_lmer_CircPhase_Tauber)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: CircPhase ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: (d_LA)
##
## REML criterion at convergence: 4247.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -2.10384 -0.57625 -0.06697 0.85374 1.83691
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 0.04096 0.2024
## Batch (Intercept) 0.41358 0.6431
## Residual 46.57281 6.8244
## Number of obs: 639, groups: Line:Population, 92; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 9.0667 0.9362 8.2604 9.684 8.62e-06 ***
## PopulationGI 4.1447 1.1992 59.2979 3.456 0.001019 **
## PopulationKA 4.9461 1.1019 45.7989 4.489 4.81e-05 ***
## PopulationMA 3.8907 1.1176 52.8628 3.481 0.001009 **
## PopulationMU 3.1054 1.2721 79.9386 2.441 0.016851 *
## PopulationRE 4.2240 1.3234 66.9784 3.192 0.002153 **
## PopulationUM 1.9322 1.1559 53.6304 1.672 0.100412
## PopulationVA 3.9101 1.1388 47.0096 3.433 0.001254 **
## PopulationYE 3.8560 1.0930 73.7527 3.528 0.000725 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.596
## PopulatinKA -0.651 0.508
## PopulatinMA -0.645 0.503 0.550
## PopulatinMU -0.558 0.436 0.475 0.469
## PopulatinRE -0.559 0.435 0.479 0.481 0.400
## PopulatinUM -0.621 0.484 0.529 0.525 0.453 0.458
## PopulatinVA -0.634 0.494 0.541 0.538 0.461 0.474 0.516
## PopulatinYE -0.660 0.515 0.564 0.560 0.480 0.493 0.538 0.551
Activity
LA_lmer_Activity_Tauber <- lmer(Activity ~ Population + (1|Line:Population) +
(1|Batch), data = (d_LA))
capture.output(summary(LA_lmer_Activity_Tauber),file = "Locomotor/LA_lmer_Activity_Tauber.txt")
capture.output(anova(LA_lmer_Activity_Tauber),file = "Locomotor/LA_lmer_Activity_Tauber.txt")
#capture.output(emmeans(LA_lmer_Activity_Tauber, list(pairwise ~ Population), adjust = "tukey"),file = "Locomotor/LA_lmer_Activity_Tauber_tk.txt")
anova(LA_lmer_Activity_Tauber)
## Type III Analysis of Variance Table with Satterthwaite's method
## Sum Sq Mean Sq NumDF DenDF F value Pr(>F)
## Population 2149.2 268.65 8 71.722 3.8883 0.0007429 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
summary(LA_lmer_Activity_Tauber)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Activity ~ Population + (1 | Line:Population) + (1 | Batch)
## Data: (d_LA)
##
## REML criterion at convergence: 4624.6
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.16030 -0.55380 0.07697 0.65610 2.31656
##
## Random effects:
## Groups Name Variance Std.Dev.
## Line:Population (Intercept) 41.72 6.459
## Batch (Intercept) 7.27 2.696
## Residual 69.09 8.312
## Number of obs: 639, groups: Line:Population, 92; Batch, 2
##
## Fixed effects:
## Estimate Std. Error df t value Pr(>|t|)
## (Intercept) 31.197 3.140 6.396 9.935 4.02e-05 ***
## PopulationGI 3.118 3.518 67.155 0.886 0.3786
## PopulationKA 4.583 3.376 64.374 1.358 0.1793
## PopulationMA 5.644 3.376 64.461 1.672 0.0994 .
## PopulationMU -6.072 3.498 72.038 -1.736 0.0869 .
## PopulationRE 7.024 3.688 72.820 1.905 0.0608 .
## PopulationUM -5.237 3.465 64.916 -1.512 0.1355
## PopulationVA -2.690 3.486 65.345 -0.772 0.4431
## PopulationYE 3.049 3.068 69.746 0.994 0.3237
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) PpltGI PpltKA PpltMA PpltMU PpltRE PpltUM PpltVA
## PopulatinGI -0.563
## PopulatinKA -0.587 0.524
## PopulatinMA -0.588 0.525 0.547
## PopulatinMU -0.566 0.505 0.526 0.527
## PopulatinRE -0.543 0.484 0.505 0.508 0.484
## PopulatinUM -0.573 0.511 0.533 0.534 0.513 0.494
## PopulatinVA -0.570 0.509 0.530 0.532 0.510 0.494 0.518
## PopulatinYE -0.648 0.578 0.603 0.604 0.580 0.561 0.588 0.586
From Eran :
Red letters denote significant difference by Multiple Comparisons of Means: Tukey Contrasts
knitr::include_graphics("Locomotor/FromEran/pheno2022_Page_1.png")
knitr::include_graphics("Locomotor/FromEran/pheno2022_Page_2.png")
knitr::include_graphics("Locomotor/FromEran/pheno2022_Page_3.png")
Phase in DD represented in angle. The mean and 95 confidence limits are shown. CI limits in red indicate uniform distribution (low concentration. i.e. Rayleigh test not significant).
knitr::include_graphics("Locomotor/FromEran/pheno2022_Page_4.png")
Oriana 3 (Stacked circular).
knitr::include_graphics("Locomotor/FromEran/pheno2022_Page_5.png")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Gonzalez Lab : Llewellyn Green, Josefa Gonzalez, Miriam Merenciano
Onder Lab : Seda Coskun, Ekin Demir, Senel Selin Senkal, Cansu Aksoy
Pasyukova Lab : Alexander Symonenko, Natalia Roshina, Mikhail Trostnokov, Ekaterina Veselkina, Evgenia Tsybul’ko, Olga Rybina, Elena Pasyukova
d_SR <- read.csv("MasterSheets_Oct21_git/SR_MasterSheet_Nov21.csv")
str(d_SR)
## 'data.frame': 78315 obs. of 14 variables:
## $ Supervisor.PI : chr "Gonzalez" "Gonzalez" "Gonzalez" "Gonzalez" ...
## $ Diet : chr "S" "S" "S" "S" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : chr "F" "F" "F" "F" ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : chr "Gonzalez_1_AK1_F_1" "Gonzalez_1_AK1_F_1" "Gonzalez_1_AK1_F_1" "Gonzalez_1_AK1_F_1" ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ AgeAtDeath_hours: int 56 96 96 96 104 104 104 112 112 120 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_SR$Supervisor.PI <- as.factor(d_SR$Supervisor.PI)
d_SR$Diet <- as.factor(d_SR$Diet)
d_SR$Batch <- as.factor(d_SR$Batch)
d_SR$Population_Lat <- factor(d_SR$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_SR$Population_Lon <- factor(d_SR$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_SR$Population_Alt <- factor(d_SR$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_SR$Line <- as.factor(d_SR$Line)
d_SR$Sex <- as.factor(d_SR$Sex)
d_SR$ReplicateVial <- as.factor(d_SR$ReplicateVial)
d_SR$AgeAtDeath_hours <- as.numeric(d_SR$AgeAtDeath_hours)
str(d_SR)
## 'data.frame': 78315 obs. of 17 variables:
## $ Supervisor.PI : Factor w/ 3 levels "Gonzalez","Onder",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 2 levels "NS","S": 2 2 2 2 2 2 2 2 2 2 ...
## $ Batch : Factor w/ 7 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 171 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : Factor w/ 2 levels "F","M": 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVialOld: int 1 1 1 1 1 1 1 1 1 1 ...
## $ ReplicateVial : Factor w/ 7753 levels "Gonzalez_1_AK1_F_1",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 10 ...
## $ AgeAtDeath_hours: num 56 96 96 96 104 104 104 112 112 120 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat : Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon : Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt : Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_SR_F <-subset(d_SR,Sex=='F')
d_SR_M <-subset(d_SR,Sex=='M')
Descriptive statistics at the line level, with batch information :
table_SR_Line_wbatch <- write.csv(d_SR %>% group_by(Supervisor.PI, Batch, Sex,Population, Line) %>%
summarise_at(vars(AgeAtDeath_hours),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Starvation/table_SR_Line_wbatch.csv", row.names = T)
table_SR_Line_wbatch <- read.csv("Starvation/table_SR_Line_wbatch.csv")
Descriptive statistics at the line level, without batch information :
table_SR_Line_wobatch <- write.csv(d_SR %>% group_by(Supervisor.PI, Sex,Population, Line) %>%
summarise_at(vars(AgeAtDeath_hours),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Starvation/table_SR_Line_wobatch.csv", row.names = T)
table_SR_Line_wobatch <- read.csv("Starvation/table_SR_Line_wobatch.csv")
Descriptive statistics at the population level, with batch information :
table_SR_Pop_wbatch <- write.csv(d_SR %>% group_by(Supervisor.PI, Batch, Sex, Population) %>%
summarise_at(vars(AgeAtDeath_hours),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Starvation/table_SR_Pop_wbatch.csv", row.names = T)
table_SR_Pop_wbatch <- read.csv("Starvation/table_SR_Pop_wbatch.csv")
Descriptive statistics at the population level, without batch information :
table_SR_Pop_wobatch <- write.csv(d_SR %>% group_by(Supervisor.PI, Sex, Population) %>%
summarise_at(vars(AgeAtDeath_hours),
list(Mean = mean, SD= sd, Median = median, Min = min, Max = max,
SE = std_err, CV = coef_var, Mode = estimate_mode)),
file = "Starvation/table_SR_Pop_wobatch.csv", row.names = T)
table_SR_Pop_wobatch <- read.csv("Starvation/table_SR_Pop_wobatch.csv")
min_SR <- min(d_SR$AgeAtDeath_hours)
max_SR <- max(d_SR$AgeAtDeath_hours)
pdf(file="Starvation/p_SR_F.pdf",width=8, height=5)
p_SR_F <- ggplot(data = d_SR_F, aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + #geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F", x="Population", y = "AgeAtDeath_hours")
p_SR_F + coord_cartesian(ylim = c(min_SR, max_SR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="Starvation/p_SR_M.pdf",width=8, height=5)
p_SR_M <- ggplot(data = d_SR_M, aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Supervisor.PI)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + #geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M", x="Population", y = "AgeAtDeath_hours")
p_SR_M + coord_cartesian(ylim = c(min_SR, max_SR))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="Starvation/p_SR_F_Gonzalez.pdf",width=8, height=5)
p_SR_F_Gonzalez <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Gonzalez')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_Gonzalez", x="Population", y = "AgeAtDeath_hours")
p_SR_F_Gonzalez + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="Starvation/p_SR_F_pop_Gonzalez.pdf",width=8, height=5)
p_SR_F_pop_Gonzalez <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Gonzalez')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_pop_Gonzalez", x="Population", y = "AgeAtDeath_hours")
p_SR_F_pop_Gonzalez + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="Starvation/p_SR_M_pop_Gonzalez.pdf",width=8, height=5)
p_SR_M_pop_Gonzalez <- ggplot(data = (subset(d_SR_M,Supervisor.PI=='Gonzalez')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M_pop_Gonzalez", x="Population", y = "AgeAtDeath_hours")
p_SR_M_pop_Gonzalez + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
SR_F_lmer_Gonzalez <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_F,Supervisor.PI=='Gonzalez')))
capture.output(summary(SR_F_lmer_Gonzalez),file = "Starvation/SR_F_lmer_Gonzalez_sum.txt")
capture.output(anova(SR_F_lmer_Gonzalez),file = "Starvation/SR_F_lmer_Gonzalez.txt")
#capture.output(emmeans(SR_F_lmer_Gonzalez, list(pairwise ~ Population), adjust = "tukey"),file = "SR_F_Gonzalez_tk.txt")
SR_M_lmer_Gonzalez <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_M,Supervisor.PI=='Gonzalez')))
capture.output(summary(SR_M_lmer_Gonzalez),file = "Starvation/SR_M_lmer_Gonzalez_sum.txt")
capture.output(anova(SR_M_lmer_Gonzalez),file = "Starvation/SR_M_lmer_Gonzalez.txt")
#capture.output(emmeans(SR_M_lmer_Gonzalez, list(pairwise ~ Population), adjust = "tukey"),file = "SR_M_Gonzalez_tk.txt")
pdf(file="Starvation/p_SR_F_Onder.pdf",width=8, height=5)
p_SR_F_Onder <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_Onder", x="Population", y = "AgeAtDeath_hours")
p_SR_F_Onder + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="Starvation/p_SR_M_Onder.pdf",width=8, height=5)
p_SR_M_Onder <- ggplot(data = (subset(d_SR_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M_Onder", x="Population", y = "AgeAtDeath_hours")
p_SR_M_Onder + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
pdf(file="Starvation/p_SR_F_pop_Onder.pdf",width=8, height=5)
p_SR_F_pop_Onder <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_pop_Onder", x="Population", y = "AgeAtDeath_hours")
p_SR_F_pop_Onder + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="Starvation/p_SR_M_pop_Onder.pdf",width=8, height=5)
p_SR_M_pop_Onder <- ggplot(data = (subset(d_SR_M,Supervisor.PI=='Onder')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M_pop_Onder", x="Population", y = "AgeAtDeath_hours")
p_SR_M_pop_Onder + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
SR_F_lmer_Onder <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_F,Supervisor.PI=='Onder')))
## boundary (singular) fit: see ?isSingular
capture.output(summary(SR_F_lmer_Onder),file = "Starvation/SR_F_lmer_Onder_sum.txt")
capture.output(anova(SR_F_lmer_Onder),file = "Starvation/SR_F_lmer_Onder.txt")
#capture.output(emmeans(SR_F_lmer_Onder, list(pairwise ~ Population), adjust = "tukey"),file = "SR_F_Onder_tk.txt")
SR_M_lmer_Onder <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_M,Supervisor.PI=='Onder')))
capture.output(summary(SR_M_lmer_Onder),file = "Starvation/SR_M_lmer_Onder_sum.txt")
capture.output(anova(SR_M_lmer_Onder),file = "Starvation/SR_M_lmer_Onder.txt")
#capture.output(emmeans(SR_M_lmer_Onder, list(pairwise ~ Population), adjust = "tukey"),file = "SR_M_Onder_tk.txt")
pdf(file="Starvation/p_SR_F_Pasyukova.pdf",width=8, height=5)
p_SR_F_Pasyukova <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Pasyukova')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_Pasyukova", x="Population", y = "AgeAtDeath_hours")
p_SR_F_Pasyukova + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="Starvation/p_SR_M_Pasyukova.pdf",width=8, height=5)
p_SR_M_Pasyukova <- ggplot(data = (subset(d_SR_M,Supervisor.PI=='Pasyukova')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Batch)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M_Pasyukova", x="Population", y = "AgeAtDeath_hours")
p_SR_M_Pasyukova + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
###
SR_F_lmer_Pasyukova <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_F,Supervisor.PI=='Pasyukova')))
capture.output(summary(SR_F_lmer_Pasyukova),file = "Starvation/SR_F_lmer_Pasyukova_sum.txt")
capture.output(anova(SR_F_lmer_Pasyukova),file = "Starvation/SR_F_lmer_Pasyukova.txt")
#capture.output(emmeans(SR_F_lmer_Pasyukova, list(pairwise ~ Population), adjust = "tukey"),file = "SR_F_Pasyukova_tk.txt")
pdf(file="Starvation/p_SR_F_pop_Pasyukova.pdf",width=8, height=5)
p_SR_F_pop_Pasyukova <- ggplot(data = (subset(d_SR_F,Supervisor.PI=='Pasyukova')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_F_pop_Pasyukova", x="Population", y = "AgeAtDeath_hours")
p_SR_F_pop_Pasyukova + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
####
pdf(file="Starvation/p_SR_M_pop_Pasyukova.pdf",width=8, height=5)
p_SR_M_pop_Pasyukova <- ggplot(data = (subset(d_SR_M,Supervisor.PI=='Pasyukova')), aes(x=Population_Lat, y=AgeAtDeath_hours, fill=Population)) +
geom_boxplot(outlier.shape = NA, notch=FALSE) + geom_jitter(width=0.2,alpha=0.05) +
labs(title="p_SR_M_pop_Pasyukova", x="Population", y = "AgeAtDeath_hours")
p_SR_M_pop_Pasyukova + coord_cartesian(ylim = c(0, 210))+ droseu_theme
dev.off()
## pdf
## 3
###
SR_F_lmer_Pasyukova <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_F,Supervisor.PI=='Pasyukova')))
capture.output(summary(SR_F_lmer_Pasyukova),file = "Starvation/SR_F_lmer_Pasyukova_sum.txt")
capture.output(anova(SR_F_lmer_Pasyukova),file = "Starvation/SR_F_lmer_Pasyukova.txt")
#capture.output(emmeans(SR_F_lmer_Pasyukova, list(pairwise ~ Population), adjust = "tukey"),file = "SR_F_Pasyukova_tk.txt")
SR_M_lmer_Pasyukova <- lmer(AgeAtDeath_hours ~ Population + (1|Line:Population) +
(1|Batch) + (1|ReplicateVial : Line : Population), data = (subset(d_SR_M,Supervisor.PI=='Pasyukova')))
capture.output(summary(SR_M_lmer_Pasyukova),file = "Starvation/SR_M_lmer_Pasyukova_sum.txt")
capture.output(anova(SR_M_lmer_Pasyukova),file = "Starvation/SR_M_lmer_Pasyukova.txt")
#capture.output(emmeans(SR_M_lmer_Pasyukova, list(pairwise ~ Population), adjust = "tukey"),file = "SR_M_Pasyukova_tk.txt")
intersect_SR <- Reduce(intersect, list(d_SR$Line[d_SR$Supervisor.PI == "Gonzalez"],
d_SR$Line[d_SR$Supervisor.PI == "Pasyukova"],
d_SR$Line[d_SR$Supervisor.PI == "Onder"]))
length(intersect_SR)
## [1] 156
write(intersect_SR, file ="Starvation/SR_int.txt", sep = "\t")
For a detailed description of tables, plots, linear models and outputs, please refer here
Contributors:
Abbott Lab : Jessica Abbott, Qinyang Li, Shahzad Khan
Gibert Lab :Cristina Vieira, Laurence Mouton, Natacha Kremer, Sonia Martinez, Camille Mermet, Patricia Gibert
Schmidt Lab : Amy Goldfischer, Paul Schmidt
d_Pgm <- read.csv("MasterSheets_Oct21_git/PGM_MasterSheet_Jan22.csv")
str(d_Pgm)
## 'data.frame': 3694 obs. of 17 variables:
## $ Supervisor.PI: chr "Gibert" "Gibert" "Gibert" "Gibert" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 1 ...
## $ AreaT4 : int 12439 10230 7525 14898 9160 8279 13100 9016 7776 9595 ...
## $ AreaT5 : int 10410 8105 7358 7682 8931 8518 16468 10331 7527 8454 ...
## $ AreaT6 : int 8667 6063 6732 5718 8630 10349 11798 7986 5248 8749 ...
## $ PercT4 : num 13.6 28.1 41.4 25.4 17.3 ...
## $ PercT5 : num 27.8 45.8 62.7 37.4 32.8 ...
## $ PercT6 : num 53.9 71 78 44.8 40 ...
## $ TotalArea : int 31516 24398 21615 28298 26721 27146 41366 27333 20551 26798 ...
## $ TotalBlack : num 9270 10900 12986 9220 7966 ...
## $ TotalPerc : num 29.4 44.7 60.1 32.6 29.8 ...
## $ Orientation : chr "OK" "OK" "OK" "OK" ...
d_Pgm$Supervisor.PI <- as.factor(d_Pgm$Supervisor.PI)
d_Pgm$Diet <- as.factor(d_Pgm$Diet)
d_Pgm$Batch <- as.factor(d_Pgm$Batch)
d_Pgm$Population_Lat <- factor(d_Pgm$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Pgm$Population_Lon <- factor(d_Pgm$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Pgm$Population_Alt <- factor(d_Pgm$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Pgm$Line <- as.factor(d_Pgm$Line)
d_Pgm$AreaT4 <- as.numeric(d_Pgm$AreaT4)
d_Pgm$AreaT5 <- as.numeric(d_Pgm$AreaT5)
d_Pgm$AreaT6 <- as.numeric(d_Pgm$AreaT6)
d_Pgm$PercT4 <- as.numeric(d_Pgm$PercT4)
d_Pgm$PercT6 <- as.numeric(d_Pgm$PercT6)
d_Pgm$TotalArea <- as.numeric(d_Pgm$TotalArea)
d_Pgm$TotalBlack <- as.numeric(d_Pgm$TotalBlack)
str(d_Pgm)
## 'data.frame': 3694 obs. of 20 variables:
## $ Supervisor.PI : Factor w/ 2 levels "Abbott","Gibert": 2 2 2 2 2 2 2 2 2 2 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 168 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 11 ...
## $ Sex : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ Individual : int 1 2 3 4 5 6 7 8 9 1 ...
## $ AreaT4 : num 12439 10230 7525 14898 9160 ...
## $ AreaT5 : num 10410 8105 7358 7682 8931 ...
## $ AreaT6 : num 8667 6063 6732 5718 8630 ...
## $ PercT4 : num 13.6 28.1 41.4 25.4 17.3 ...
## $ PercT5 : num 27.8 45.8 62.7 37.4 32.8 ...
## $ PercT6 : num 53.9 71 78 44.8 40 ...
## $ TotalArea : num 31516 24398 21615 28298 26721 ...
## $ TotalBlack : num 9270 10900 12986 9220 7966 ...
## $ TotalPerc : num 29.4 44.7 60.1 32.6 29.8 ...
## $ Orientation : chr "OK" "OK" "OK" "OK" ...
## $ Population_Lat: Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon: Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt: Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
d_Pgm2 <- read.csv("MasterSheets_Oct21_git/PGM2_MasterSheet_Oct21.csv")
str(d_Pgm2)
## 'data.frame': 1514 obs. of 15 variables:
## $ Supervisor.PI: chr "Schmidt" "Schmidt" "Schmidt" "Schmidt" ...
## $ Diet : chr "NS" "NS" "NS" "NS" ...
## $ Batch : int 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : chr "AK1" "AK1" "AK1" "AK1" ...
## $ Sex : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ Individual : int 2 9 1 10 3 6 8 5 4 7 ...
## $ Tergite8 : int 4 3 2 2 2 2 2 1 1 1 ...
## $ Tergite9 : int 8 7 6 5 4 4 4 3 2 1 ...
## $ Tergite10 : int 6 3 3 4 1 1 1 1 0 0 ...
## $ Total : int 18 13 11 11 7 7 7 5 3 2 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
d_Pgm2$Supervisor.PI <- as.factor(d_Pgm2$Supervisor.PI)
d_Pgm2$Diet <- as.factor(d_Pgm2$Diet)
d_Pgm2$Batch <- as.factor(d_Pgm2$Batch)
d_Pgm2$Population_Lat <- factor(d_Pgm2$Population, levels= c("YE","RE","GI","MU","MA","UM","KA","VA","AK"))
d_Pgm2$Population_Lon <- factor(d_Pgm2$Population, levels= c("RE","GI","KA","MU","MA","AK","UM","YE","VA"))
d_Pgm2$Population_Alt <- factor(d_Pgm2$Population, levels= c("KA","AK","GI","RE","UM","VA","MU","MA","YE"))
d_Pgm2$Line <- as.factor(d_Pgm2$Line)
d_Pgm2$Tergite8 <- as.numeric(d_Pgm2$Tergite8)
d_Pgm2$Tergite9 <- as.numeric(d_Pgm2$Tergite9)
d_Pgm2$Tergite10 <- as.numeric(d_Pgm2$Tergite10)
d_Pgm2$Total <- as.numeric(d_Pgm2$Total)
str(d_Pgm2)
## 'data.frame': 1514 obs. of 18 variables:
## $ Supervisor.PI : Factor w/ 1 level "Schmidt": 1 1 1 1 1 1 1 1 1 1 ...
## $ Diet : Factor w/ 1 level "NS": 1 1 1 1 1 1 1 1 1 1 ...
## $ Batch : Factor w/ 1 level "1": 1 1 1 1 1 1 1 1 1 1 ...
## $ Population : chr "AK" "AK" "AK" "AK" ...
## $ Line : Factor w/ 157 levels "AK1","AK10","AK11",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ Sex : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ Individual : int 2 9 1 10 3 6 8 5 4 7 ...
## $ Tergite8 : num 4 3 2 2 2 2 2 1 1 1 ...
## $ Tergite9 : num 8 7 6 5 4 4 4 3 2 1 ...
## $ Tergite10 : num 6 3 3 4 1 1 1 1 0 0 ...
## $ Total : num 18 13 11 11 7 7 7 5 3 2 ...
## $ Country : chr "Finland" "Finland" "Finland" "Finland" ...
## $ Latitude : num 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 61.1 ...
## $ Longitude : num 23.5 23.5 23.5 23.5 23.5 ...
## $ Altitude : int 88 88 88 88 88 88 88 88 88 88 ...
## $ Population_Lat: Factor w/ 9 levels "YE","RE","GI",..: 9 9 9 9 9 9 9 9 9 9 ...
## $ Population_Lon: Factor w/ 9 levels "RE","GI","KA",..: 6 6 6 6 6 6 6 6 6 6 ...
## $ Population_Alt: Factor w/ 9 levels "KA","AK","GI",..: 2 2 2 2 2 2 2 2 2 2 ...
## ADD PAUL'S DATA HERE!!!!
intersect_Pgm <- Reduce(intersect, list(d_Pgm$Line[d_Pgm$Supervisor.PI == "Abbott"],
d_Pgm$Line[d_Pgm$Supervisor.PI == "Gibert"]))
length(intersect_Pgm)
## [1] 160
write(intersect_Pgm, file ="Pigmentation/intersect_Pgm", sep = "\t")